我的应用程序中的Python中有一个txt格式的文件列表,如下所示:
['Pr00-1.txt', '900-2.txt', 'Pr00-2.txt', '900-1.txt', 'Pr900-3.txt', '00-3.txt']
我尝试将所有00
个文件['Pr00-1.txt', 'Pr00-2.txt', '00-3.txt']
合并到一个00.txt
文件中。
与900个文件相同,无论Pr
还是-*.txt
如何,*
都是数字。
我尝试使用拆分,但它没有帮助。
知道该怎么做吗?
答案 0 :(得分:0)
我认为这基本上就是你想要的。使用正则表达式查找00文件,然后打开00.txt并将所有这些文件写入其中。请注意,此解决方案不适用于任何xx模式,如果其中一个文件不存在,也会失败。我会把剩下的留给你。
import re
with open('00.txt.', 'w') as outfile:
filenames = ['Pr00-1.txt', '900-2.txt', 'Pr00-2.txt', '900-1.txt',
'Pr900-3.txt', '00-3.txt']
for filename in filenames:
match = re.search(r'(^|[^0-9])00.*.txt', filename)
if (match):
with open(filename) as infile:
outfile.write(infile.read())