首页 > 解决方案 > 如何将编辑的txt文件保存到新的txt文件中?

问题描述

我试图将x 个 .txt文件的输出保存在一个.txt文件中。该.txt文件应该看起来像您在下图看到的输出。这个程序实际上做的是读取几个.txt文件,其中包含我使用正则表达式过滤掉的大量数据。

我的源代码:

import os,glob 
import re 

folder_path =(r"C:\Users\yokay\Desktop\DMS\Messdaten_DMT")
values_re = re.compile(r'\t\d+\t-?\d+,?\d*(\t-?\d+,?\d+){71}')     

for filename in glob.glob(os.path.join(folder_path, '*.txt')):
    with open(filename) as lines:
        for line in lines:
            match = values_re.search(line)
            if match:
                values = match.group(0).split('\t')
                assert values[0] == ''
                values = values[1:]
                print(values)

感谢您的时间!:)

标签: pythonsave

解决方案


然后你只需要打开一个文件并将值写入它。试试这个。您可能需要格式化(我无法测试,因为我没有您的文本文件。我假设您在 values 中的输出是正确的,请记住这是附加的,所以如果您多次运行,您将得到重复.

import os,glob 
import re
folder_path =(r"C:\Users\yokay\Desktop\DMS\Messdaten_DMT") 
values_re = re.compile(r'\t\d+\t-?\d+,?\d*(\t-?\d+,?\d+){71}') 
outF = open("myOutFile.txt", "a")
for filename in glob.glob(os.path.join(folder_path, '*.txt')):
    with open(filename) as lines:
        for line in lines: 
            match = values_re.search(line)
            if match: 
                values = match.group(0).split('\t') 
                assert values[0] == '' 
                values = values[1:] 
                outF.write(values)
                print(values) 

推荐阅读