Pythonでフォルダ内のすべてのCSVファイルを読み込んで並べ替えて1つのファイルに出力する

前提

読み込むCSVファイルはカレントフォルダの「data」フォルダに入っている
出力ファイルはカレントフォルダの「out.csv
CSVファイルの1行目はタイトル行
並び替えはCSVファイルの1列目の「date」列をキーとして行う
2列目の「id」列をキーとして行う場合は後述

CSVファイルの内容

1.csv

date,id
20220102,1
20220101,3
20220103,5

2.csv

date,id
20220202,6
20220201,4
20220203,2
Pythonのプログラム
import glob
import io
import csv

csv_data = []
row_list = []
for file_path in glob.glob('data/*'):
    with open(file_path) as file_in:

        #タイトル行を読み飛ばす
        header = file_in.readline()

        #2行目以降を読み込んで、他のファイルのデータと結合する
        csv_data += csv.reader(io.StringIO(file_in.read()))

with open('out.csv', 'w') as file_out:
    #タイトル行を書き込む
    file_out.write(header)

    #データを並べ替えてCSVとして出力する
    csv.writer(file_out).writerows(sorted(csv_data))
実行結果

「out.csv

date,id
20220102,1
20220203,2
20220101,3
20220201,4
20220103,5
20220202,6
2列目の「id」をキーとして並び替える場合は「sorted」に「key」を追加する
csv.writer(file_out).writerows(sorted(csv_data, key=lambda x: x[1]))

3列目をキーとする場合は、x[2]とする