Создавать и записывать динамически в несколько файлов в Python - PullRequest
0 голосов
/ 26 апреля 2018

У меня есть следующий фрагмент, где я записываю обновленные значения переменных в файл output.xml, но я хочу иметь возможность создавать столько файлов xml, сколько итераций в цикле for.Есть ли способ, где я могу попытаться дать имя выходного файла со значением iter?Как Output1.xml, Output2.xml и так далее?

 for child in root.iter('Traces'):
    child.find('D')
    child.find('TS')
    child.find('TW')
    for i in frange(3,12.75,0.25):
        child.set('TS',str(i))
        child.set('TW',str(i))
        #child.set('D',str(j))
        tree.write('C:\Users\Aravind_Sampathkumar\Desktop\IMLC\BO\Output.xml')

Ответы [ 2 ]

0 голосов
/ 26 апреля 2018
for child in root.iter('Traces'):
    child.find('D')
    child.find('TS')
    child.find('TW')
    count = 1
    for i in frange(3,12.75,0.25):
        child.set('TS',str(i))
        child.set('TW',str(i))
        #child.set('D',str(j))
        tree.write('C:\Users\Aravind_Sampathkumar\Desktop\IMLC\BO\Output{0}.xml'.format(count))
        count += 1
0 голосов
/ 26 апреля 2018

Просто добавьте счетчик для разных файлов.

fileCount = 1 

for child in root.iter('Traces'):
    child.find('D')
    child.find('TS')
    child.find('TW')
    for i in frange(3,12.75,0.25):
        child.set('TS',str(i))
        child.set('TW',str(i))
        #child.set('D',str(j))
        tree.write('C:\Users\Aravind_Sampathkumar\Desktop\IMLC\BO\Output{}.xml'.format(fileCount))
        fileCount += 1
...