Home » Python » Pythonで複数のファイルを結合する

Pythonで複数のファイルを結合する

動作検証バージョン:Windows 10 Pro(64-bit)+ Python 3.8.3(32-bit)

同じ拡張子の複数ファイルを1つにまとめたいシーンがあり、(Pythonを使う必要はなかったのですが)Pythonでスクリプトを作ってみました。

[スポンサードリンク]

複数ファイルを結合するサンプル

以下のスクリプトを実行すると、Cドライブtempフォルダーにある、拡張子が「.md」のファイルが結合されて、merged.mdが作成されます。

import glob

path = 'C:\\temp\\'
files = glob.glob(path + '*.md')

with open(path + 'merged.md', 'wb') as f_new:
    for f in files:
        with open(f, 'rb') as f_org:
            f_new.write(f_org.read())

サンプルスクリプトで行っている処理

まずglob.glob関数で、Cドライブtempフォルダーにある、mdファイル名のリストfilesを作成しておきます。
  path = 'C:\\temp\\'
  files = glob.glob(path + '*.md')

次にopen関数で、Cドライブtempフォルダーにmerged.mdファイルを作成して、
  with open(path + 'merged.md', 'wb') as f_new:

元のmdファイルを順番に開き、
      for f in files:
          with open(f, 'rb') as f_org:

ファイルオブジェクトの、readメソッドで元のファイルを読み込み、writeメソッドで書き込みを行っています。
              f_new.write(f_org.read())

結合するだけだったので、このようなスクリプトにする必要もなかったのですが、将来、複数ファイルから一部を抜き出して新しいファイルを作るみたいな処理が必要になったときに、このスクリプトをベースに修正すればいけるのではないかと考えています。

[スポンサードリンク]

Home » Python » Pythonで複数のファイルを結合する

「Python」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.