🍊

[メモ] たくさんあるCSVファイルのヘッダーだけを出力するためのコード

2024/08/23に公開

概要

メモです。大量にあるファイルのうち一部でヘッダーがないCSVファイルが含まれていたようで,それをPythonコードで一気見できるようにしたくて,下記のようなコードを書きました。

コード

# 下記環境で動作確認
# # MacBook Pro (Apple M1 Pro)
# # Ventura 13.6
# # python 3.10.13

import os
import glob
import pprint

# 走査したいディレクトリのパスを指定する
target_dir = "ZZZ"

# target_path配下の文字列'XXX'を含むファイルの名前をリストアップする
files_unsorted = [os.path.basename(p) for p in glob.glob(target_dir + "XXX*", recursive=True) if os.path.isfile(p)]

# ファイル名をソートする
files = sorted(files_unsorted)

# ファイル名のリストを表示する
pprint.pprint(files)

for k in files:
    print(k)
    try:
        with open(target_dir + k,"r") as f:
            lines = f.readlines()
        # 一行目にあるべきヘッダーを取得する
        header = lines[0]
        print(header)
    except:
        print('error')

参考リンク

https://note.nkmk.me/python-list-sort-sorted/

https://note.nkmk.me/python-glob-usage/

https://qiita.com/to-fmak/items/bff68b29a394249b0bab

Discussion