Python新手求助:如何将文件名列表输出到TXT或XLSX文件
把获取到的文件名保存为TXT或XLSX格式
嗨,作为Python新手能自己找到获取文件名的方法已经很棒啦!我帮你补充保存文件的代码,直接就能用~
首先先纠正下你代码里的小问题:路径里的'D\\Options'应该写成'D:\\Options'(两个反斜杠)或者用原始字符串r'D:\Options',不然Python会把单个反斜杠当成转义字符,可能会报错哦。
保存为TXT格式
这部分用Python内置的文件操作就能实现,不用额外装库。直接把文件名逐行写入TXT文件:
from os import listdir from os.path import isfile, join from typing import List # 修正路径写法,用原始字符串更省心 folder_path = r'D:\Options' onlyfiles: List[str] = [f for f in listdir(folder_path) if isfile(join(folder_path, f))] # 保存为TXT文件,utf-8编码避免中文乱码 with open('文件名列表.txt', 'w', encoding='utf-8') as txt_file: # 逐行写入每个文件名,阅读起来更清晰 for filename in onlyfiles: txt_file.write(f"{filename}\n") print("TXT文件已保存完成!")
生成的TXT文件里每个文件名占一行,方便你直接查看或后续处理。
保存为XLSX格式
如果要保存成Excel文件,我们需要用到pandas这个第三方库(处理表格数据超好用),先在命令行安装它:
pip install pandas
然后用下面的代码保存:
from os import listdir from os.path import isfile, join from typing import List import pandas as pd folder_path = r'D:\Options' onlyfiles: List[str] = [f for f in listdir(folder_path) if isfile(join(folder_path, f))] # 把文件名列表转换成表格格式,指定列名为「文件名」 df = pd.DataFrame(onlyfiles, columns=['文件名']) # 保存为XLSX,index=False表示不自动添加行号 df.to_excel('文件名列表.xlsx', index=False) print("XLSX文件已保存完成!")
要是想同时保存两种格式,把上面的代码片段整合到一起就行啦~
内容的提问来源于stack exchange,提问作者vivek rajagopalan




