Erreur d'indentation incompréhensible

Le problème exposé dans ce sujet a été résolu.

Bonjour à tous, je suis entrain de développer un script python, seulement voilà j'ai une erreur d'indentation, pourtant il me semble que j'ai correctement indenté. Voici la fonction qui crée problème:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
def analyserFichier(chemin):
    """Fonction qui analyse le fichier passé en paramètre pour extraire les données
    importantes qu'il contient
    Paramètre chemin: le chemin relatif par par rapport au script qui éxecute cette fonction
    pour atteindre les fichiers à analyser
    Retour: les différentes listes qui contiennent des informations sur les paquets transmis
    et reçus par le noeuds"""

    #Variables qui vont stocker diverses informations sur les noeuds
    #listes pour la couche physique
    phyRxOk = list()
    phyTxOk = list()
    phyTxDrop = list()
    phyRxDrop = list()
    #listes pour la couche mac
    macRxOk = list()
    macTxOk = list()
    macTxDrop = list()
    macRxDrop = list()

    #initialisation des listes
    initialiserListe(phyRxOk, "Reception")
    initialiserListe(phyTxOk, "Transmission")
    initialiserListe(phyTxDrop, "Transmission")
    initialiserListe(phyRxDrop, "Reception")
    initialiserListe(macRxOk, "Reception")
    initialiserListe(macTxOk, "Transmission")
    initialiserListe(macTxDrop, "Transmission")
    initialiserListe(macRxDrop, "Reception")

    #motif1: motif de la ligne qui contient entre autres les id des noeuds emetteur et recepteur
    #motif2: motif de la ligne qui contient les différentes entêtes qui ont été ajoutés à un paquet
    motif1, motif2 = formerMotif(fichier)

    #on récupère l'ensemble des fichiers du repertoire spécifié dans une liste
    listeFichiers = os.listdir(chemin)
    for fichier in listeFichiers:
        ligne = " " #variable qui représente une ligne du fichier
        with open(fichier, "r") as flux:
            while ligne != '': #boucle qui continue tant qu'il y a une ligne non vide
                ligne = flux.readline()
                if re.match(motif1,ligne):
                    if fichier == 'phy-tx-ok.tr':
                        resultat = re.match(motif1,ligne)
                        sender = int(resultat.group(1))
                        phyTxOk[sender] += 1
                    if fichier == 'mac-rx-end.tr':
                        resultat = re.match(motif1,ligne)
                        receiver = int(resultat.group(1))
                        sender = int(resultat.group(2))
                        if macRxOk[receiver] != []:
                            correct, identifiant = emetteurExiste(macRxOk, sender, receiver)
                            if correct:
                                macRxOk[receiver][identifiant][1] += 1 #on incrémente le nombre de fois qu'on reçoit le paquet pour ce noeud
                            else:
                                macRxOk[receiver].append([sender, 1])
                        else:
                            macRxOk[receiver].append([sender, 1])
    #print macRxOk[0]
    #print phyRxDrop
    #print phyTxOk
    return macRxOk, phyTxOk, phyRxOk, phyTxDrop, phyRxDrop, macTxOk, macTxDrop, macRxDrop

j'ai ce message d'erreur

1
2
3
4
File "analyse_tr.py", line 78
    listeFichiers = os.listdir(chemin)
                                     ^
IndentationError: unindent does not match any outer indentation level

la ligne 78 correspond à la ligne 36 du code. Si quelqu'un peut m'expliquer le pourquoi du problème, ce serait gentil. Merci bien.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte