使用python将多个txt文件的内容转换为具有单独工作表的单个excel文件

2023-12-22

这个问题类似于使用python将多个txt文件的内容转换为单个excel文件 https://stackoverflow.com/questions/72527193/content-from-multiple-txt-files-into-single-excel-file-using-python.

我可以将这些数据放在单独的工作表中而不是一张表中吗?

例如,如果我有 3 个 txt 文件,如下所示:
文件1.txt:

a 10
b 20
c 30

文件2.txt:

d 40
e 50
f 60

文件3.txt:

g 70
h 80
i 90

我希望在一个工作簿中将文件 1 作为工作表 1,将文件 2 作为工作表 2 等。使用 openpyxl 会很有帮助。


逻辑与我的其他答案略有不同,但基本原理是相同的。最大的变化是在循环中加载文件,并命名工作表......

要求.txt

pandas
openpyxl

code

# we use pandas for easy saving as XSLX
import pandas as pd


filelist = ["file01.txt", "file02.txt", "file03.txt"]


def load_file(filename: str) -> list:
    result = []
    with open(filename) as infile:
        # the split below is OS agnostic and removes EOL characters
        for line in infile.read().splitlines():
            # the split below splits on space character by default
            result.append(line.split())
    return result


with pd.ExcelWriter("output.xlsx") as writer:
    sheet_names = ["sheet1", "sheet2", "sheet3"]
    for idx, filename in enumerate(filelist):
        df = pd.DataFrame(load_file(filename))
        df.to_excel(writer, sheet_name=sheet_names[idx], index=False, header=False)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用python将多个txt文件的内容转换为具有单独工作表的单个excel文件 的相关文章

随机推荐