我有一个将文本文件或命令输出转换为csv文件的用例。
我当前文本文件的输出如下:
1.文件测试
Use Yes
Mode Enabled
2.文件测试
Use No
Mode Disabled
3.文件测试
Use Partial
Mode enabled
我想在csv文件中生成如下输出:
File Use Mode
1.test Yes Enabled
2.test No Disabled
3.test Partial Enabled
我一直在寻找合适的方法来解决这个问题…
我们可以使用csv模块:
import csv
data = []
files = ['File 1.test', 'File 2.test', 'File 3.test']
csv_columns = ["file_name", "Use", "Mode"]
with open('output.csv', 'w') as csvfile:
writer = csv.DictWriter(csvfile, fieldnames=csv_columns)
writer.writeheader()
for file in files:
file_data = {"file_name" : file}
with open("/Users/hbohra/Downloads/test-data/{0}".format(file)) as f:
for line in f.readlines():
file_data.update({line.split()[0]: line.split()[1]})
writer.writerow(file_data)
输出文件:
file_name,Use,Mode
File 1.test,Yes,Enabled
File 2.test,No,Disabled
File 3.test,Partial,enabled
如果有帮助,请告诉我。