首页 > 解决方案 > 完成脚本主体后输出到不同的文件

问题描述

我有 1 个 *.xml 文件,其中包含大量类似的行,例如

"first-int": 0,
"first-int-id": 0,
"int-count": 1

"first-int": 64,
"first-int-id": 0,
"int-count": 2

我也有一个脚本可以使用它:

import re
import fileinput
with fileinput.input(files="file.xml", inplace=True, backup='.original.bak', mode='r') as f:
            for line in f:
                result = re.sub('"int-count": (\d+)', lambda exp: '"int-count": {}'.format(int(exp.group(1)) + 1), line)
                print(result, end='')

我想要的只是添加一个循环,并在输出时获得唯一的文件名。

n = 0
while n < 5:
... code from above ...
n = n + 1

但我在输出时得到完全相同的文件名。脚本完美运行了 5 次。我想得到这样的文件。

First iteration: input - `file.xml`, output - `file1.xml`
second iteration: input - `file1.xml`, output - `file2.xml` and etc.

或者

First iteration: input - `file.xml`, output - `file.xml`, backupfile - `file.xml.original.1.bak`
second iteration: input - `file.xml`, output - `file.xml`, backupfile - `file.xml.original.2.bak` and etc.

我应该怎么做才能改进脚本?提前致谢

标签: python

解决方案


推荐阅读