Utiliser une variable pour définir le membre de la liste [Résolu]

M3NSONG3 433 Messages postés mardi 16 avril 2013Date d'inscription 25 novembre 2017 Dernière intervention - 12 juin 2017 à 12:39 - Dernière réponse : M3NSONG3 433 Messages postés mardi 16 avril 2013Date d'inscription 25 novembre 2017 Dernière intervention
- 12 juin 2017 à 17:18
Bonjour,


Je développe actuellement un système en Python, mais un problème reste totalement inexpliqué pour ma part :

Dans mon code j'ai :

BanExtension = [".py", ".asi", ".mix", ".flt",".m3d"]

Tban = len(BanExtension)

i = 0




Et d'un autre côté j'ai :


while i != Tban:
Ordner = os.listdir('.')
Ordner.sort()
for Datei in Ordner:
global i
if Datei.find(BanExtension[i]) != -1:
dbg.LogBox("Une erreur est survenue: " + str(Datei) + "")
try:
os.remove(Datei)
except:
dbg.LogBox("Erreur !")
dbg.LogBox("Fichier: " + str(Datei))
app.Abort()
else:
pass
i+=1


Sauf que j'ai une erreur sur cette ligne :
if Datei.find(BanExtension[i]) != -1: 


Erreur =
 name 'i' is used prior to global declaration


Je voudrais en fait choisir les membres de la liste un par un pour le scan, mais je ne sais pas du tout comment faire.

Merci de votre aide !

Afficher la suite 

5 réponses

Répondre au sujet
Felice_ 266 Messages postés mardi 25 avril 2017Date d'inscription 20 juillet 2017 Dernière intervention - 12 juin 2017 à 13:01
0
Utile
4
Bonjour,

global s'utilise dans une fonction et non dans une boucle « for »
M3NSONG3 433 Messages postés mardi 16 avril 2013Date d'inscription 25 novembre 2017 Dernière intervention - 12 juin 2017 à 15:03
C'était un test, avec ou sans, j'ai la même erreur
Felice_ 266 Messages postés mardi 25 avril 2017Date d'inscription 20 juillet 2017 Dernière intervention - 12 juin 2017 à 15:49
Ton erreur vient bien du global mal placé.

C'est bien écrit que tu utilises ta variable i avant la déclaration global, de plus global s'utilise dans une fonction…
M3NSONG3 433 Messages postés mardi 16 avril 2013Date d'inscription 25 novembre 2017 Dernière intervention - 12 juin 2017 à 17:06
Si je dois le mettre, où le mettre alors ? '-'
Merci de ton aide.
M3NSONG3 433 Messages postés mardi 16 avril 2013Date d'inscription 25 novembre 2017 Dernière intervention - 12 juin 2017 à 17:18
Problème résolu, je suis passé par la boucle for.
Commenter la réponse de Felice_