闲来无事浏览到《【办公自动化】使用Python批量处理Excel文件并转为csv文件》这篇博文,关于Excel转Csv在实际处理过程中,感觉略显繁复,觉得再此案例中是否可以采取更简洁的代码完成此项工作,思路如下:首先可以通过遍历得到指定目录下所有的Excel文件列表,然后再逐个将列表内的Excel文件转换为CSV保存到同一目录下即可。
完整代码如下:
import os
from pathlib import Path
import pandas as pd# 遍历目录得到Excel表格列表
def find_table_files(directory, extensions=('.xlsx', '.xls')):table_files = []for root, dirs, files in os.walk(directory):for file in files:if file.endswith(extensions):table_files.append(os.path.join(root, file))return table_files# 逐个将列表里表格转换为CSV文件
directory_path = f'd:\\xls'
files = find_table_files(directory_path)
for file in files:df = pd.read_excel(file)df.to_csv(f'd:\\xls\\ToCsv\\{Path(file).stem}.csv', index=False)
print(f'执行完毕')