将多个输入文件转换为一个单一的Excel文件,使用Python

2024-04-26 05:00:21 发布

您现在位置:Python中文网/ 问答频道 /正文

由于我对Python不太了解,我想问一下如何将多个输入文件保存到不同列中的一个Excel文件中?我有一个python脚本,它将一个日志文件作为输入:

file = 'output_1.log' 

并将此日志文件的某些结果输出到Excel文件中的单个列中,如下所示:

^{pr2}$

如何更改这些命令以读取多个文本文件(*.log)并在单个Excel文件中为每个输入文件的不同列打印结果?在

谢谢你。。。在


Tags: 文件命令脚本logoutputexcelfile文本文件
2条回答

大卫的回答是个不错的选择。在

就个人而言,我更倾向于使用类似手术室步行(如果从单个目录中提取所有内容)或从用户提供的列表中迭代它们。在

至于编写XLS文件,您当然可以像David指出的那样使用join作为TSV来完成。但是,使用像XLWT这样的库可以让您更好地控制和访问更多的excels特性。如果您确实想将其作为一个TSV来实现,那么您可能仍然需要查看CSV库及其writer对象,以帮助处理诸如文本引用之类的事情。在

你想怎么做就怎么做。它单独读取每个文件,以创建一个字典,将每个文件名映射到其列表。在

import glob

data = {}
for infile in glob.glob("*.log"):
    with open(infile) as inf:
        data[infile] = [l[:-1] for l in inf]

with open("summary.xls", "w") as outf:
    outf.write("\t".join(data.keys()) + "\n")
    for sublst in zip(*data.values()):
        outf.write("\t".join(sublst) + "\n")

相关问题 更多 >

    热门问题