使用 Python 将 for 循环结果添加到 excel 电子表格

Add for loop results to excel spreadsheet with Python

我正在尝试创建一个小应用程序,它可以识别目录中文件夹的名称,并将它们放在一个漂亮的 excel 电子表格中。

但是,每当我 运行 应用程序时,for 循环的结果在 excel 电子表格中被覆盖,我总是只得到一行,而不是所有的结果行来自循环。

你能看看我的代码并告诉我哪里做错了吗?

import os
import pandas as pd

CCM = "C:\Electronical Files\Drivers\CCM"

f = open("CCMs.txt", "w", encoding="utf-8")
f.close()

for crew in os.listdir(CCM):
    full_name = crew.split(", ")
    first_name = full_name[1]
    last_name = full_name[0]

    df = pd.DataFrame({"First name": [first_name], "Last name": [last_name]})
    df.to_excel("./CMMs.xlsx", sheet_name="CMMs")

    f = open("CCMs.txt", "a", encoding="utf-8")
    f.write(crew + "\n")
    f.close()

    print(first_name + " " + last_name)

此致, 亚历克斯

保持数据帧的创建和导出到 excel,直到循环结束。相反,您可以在将用于创建数据框的列表中收集名称

names = []
for crew in os.listdir(CCM):
    names.append(crew.split(', ')[::-1])

df = pd.DataFrame(names, columns=['First Name', 'Last Name'])
df.to_excel('./CMMs.xlsx', sheet_name='CMMs')
with open('CCMs.txt', 'w', encoding='utf-8') as f:
    f.write('\n'.join(names))