2009-11-03 7 views
1

Je suis novice en programmation et j'apprends Python comme première langue. J'ai été chargé d'écrire un script qui convertit un type de fichier d'entrée en un autre. Mon problème est le suivant: il y a une partie des fichiers d'entrée où il peut y avoir un nombre quelconque de lignes de données. J'ai écrit une boucle pour déterminer combien de lignes il y a mais je n'arrive pas à écrire une boucle qui définit chaque ligne à sa propre variable, par exemple: rprim1, rprim2, rprim3, etc. C'est le code que j'utilise pour extraire les variables des fichiers:Python définir automatiquement les variables

rprim1=linecache.getline(infile,7) 

réitérer, je voudrais que l'analyseur de définir de nombreuses lignes de cependant données il y a, X, comme rprimx, chaque ligne, 7 à 7 + X.

Toute aide serait appréciée.

Merci

Répondre

13

Vous peut créer dynamiquement les variables, mais il n'a pas de sens à moins que cela est devoirs.

utiliser à la place

rprim=infile.readlines() 

alors les lignes sont

rprim[0], rprim[1], rprim[2], rprim[3], rprim[4], rprim[5], rprim[6] 

vous pouvez savoir combien de lignes il y a avec

len(rprim) 
+3

ne peut pas + assez. Il n'y a pas de raison rationnelle de créer des variables quand tout ce dont vous avez vraiment besoin est une structure de données simple. Vous vous épargnerez des maux de tête infinis, simplifierez la gestion de votre mémoire et bénéficierez de fonctions pratiques. – Satanicpuppy

+0

Maintenant, je vois ce que j'aurais dû faire depuis le début. J'apprends toujours à penser comme un programmeur ... avec des listes ... Merci –

1

C'est quelque chose que vous ne voulez vraiment pas. Supposons que vous ayez ces variables rprim1, rprim2 .. etc comment sauriez-vous combien d'entre elles avez-vous?

Lire sur les listes en python link text

Questions connexes