本記事では、雛形コードを載せました。カレントフォルダ以下の全てのサブフォルダを探索し、拡張子「.csv」を検出してファイルパスをリストで取得します。そして、各ファイル名をシート名として、ひとつのエクセルファイル「.xlsx」へ保存します。
下図は、その実施例でシートが3つあります。これはカレントフォルダ以下に3つのcsvファイルがあったためです。

■本プログラム
import os, re
import openpyxl
import pandas as pd
def main():
path_list = []
for dirpath, dirnames, filenames in os.walk(os.getcwd()):
for filename in filenames:
if re.search(".csv", filename):
mypath = [dirpath, filename]
path_list.append(os.path.join(*mypath))
EXL = pd.ExcelWriter(out_file, engine='openpyxl')
for file_path in path_list:
sheet = pd.read_csv(file_path)
sheet.to_excel(EXL,
sheet_name=os.path.splitext(os.path.basename(file_path))[0],
index = False)
EXL.save()
if __name__ == '__main__':
out_file = 'all_csv.xlsx'
main()
以上
<広告>
リンク