2015-09-02 2 views
0

Actuellement, j'ai un script utilisant le nom de fichier texte (par exemple 1.txt) d'entrée brute, l'ouvre et parse alors pour mes besoins:utilisation python raw_input pour les noms de fichiers gamme

fname = raw_input("Enter file name: ") 
fh = open(str(fname)) 
... 

Il y a 10 fichiers dans le répertoire: 1.txt, 2.txt, ... 10.txt

Alors, comment puis-je entrer les noms de fichiers de gamme dans une entrée brute comme de 2.txt à 6.txt et analyser ces fichiers 1 par 1 Au lieu d'exécuter le script chaque fois pour un seul fichier?

+0

c'est tout jusqu'à vous. vous pouvez faire quelque chose comme 'foobar (filename = 'test', range = [1,9], ext = 'txt')' – taesu

+0

Et quelle approche avez-vous essayé jusqu'ici? – beezz

+0

n'entendez-vous pas de boucles? –

Répondre

0

Je suppose que les noms de fichiers sont n.tx t où n >= 1
puis,

def parse(flie): 
    pass 
    # this is where you parse the file. 

lower = raw_input("Enter start: ") # assume int 
upper = raw_input("Enter end: ") # assume int and >= lower 
files = [str(i)+'.txt' for i in range(int(lower),int(upper)+1)] 

for file in files: 
    parse(file) 
+0

merci, ça va marcher! –