2013-10-28 3 views
0

У меня есть 4 списка, называемые I_list, Itiso, ItHDKR и Itperez, и я хотел бы получать выходные файлы .txt с данными этих списков. Я пытаюсь сделать Python автоматически переименовывать имя выходных файлов .txt с точки зрения некоторых моих входных данных. Таким образом, выходные файлы .txt всегда будут иметь разные имена.Автоматически назвав выходной файл txt в Python

Теперь я программируя следующие команды:

Horizontal_radiation = [] 
Isotropic_radiation = [] 
HDKR_radiation = [] 
Perez_radiation = [] 

Horizontal = open("outputHorizontal.txt", 'w') 
Isotropic = open("outputIsotropic.txt", 'w') 
HDKR = open("outputHDKR.txt", 'w') 
Perez = open("outputPerez.txt", 'w') 

for i in I_list: 
     Horizontal_radiation.append(i) 
for x in Itiso: 
     Isotropic_radiation.append(x) 
for y in ItHDKR: 
     HDKR_radiation.append(y) 
for z in Itperez: 
     Perez_radiation.append(z)   

Horizontal.write(str(Horizontal_radiation)) 
Isotropic.write(str(Isotropic_radiation)) 
HDKR.write(str(HDKR_radiation)) 
Perez.write(str(Perez_radiation)) 

Horizontal.close() 
Isotropic.close() 
HDKR.close() 
Perez.close() 

Как вы можете видеть, имя выходного файла .txt фиксируется как «outputHorizontal.txt» (первый). Есть ли способ изменить это имя и поместить его в соответствии с вводом? Например, одним из моих входов является широта, как «lat». Я пытаюсь сделать имя выходного файла выраженным в терминах «lat», таким образом каждый раз, когда я запускаю программу, имя будет отличаться, потому что теперь я всегда получаю то же имя и файл перезаписывается.

спасибо, что пожелаете.

ответ

0

Вы можете передать строчную переменную в качестве имени выходного файла. Например, вы можете переместить объявление файлов после добавления элементов в списки (и, прежде чем писать их) и использовать

Horizontal = open(str(Horizontal_radiation[0]), 'w') 

Или просто добавить метку к имени файла, если это все о не перезаписи файлы

Horizontal = open("horizontal-%s".format(datetime.today()), 'w') 
Смежные вопросы