質問:
この質問はPythonでテキスト・ファイルを連結するに関連してるかも。
今、[‘file1.txt’, ‘file2.txt’,…]のようなfile_names
のリストがある。
僕は全部のファイルを行ごとに読んで、単一のファイルオブジェクトにしたいんだけど、でもその過程で新しいファイルを作らずにやることって可能??
|
By bluprince13 | 質問日時: 2017年9月15日 10:15
回答1:
fileinputモジュールのinputを使えばいいよ。
これは複数のファイルから読み込むんだけど、文字列があたかも単一のファイルから来てるように見せるんだ (レイジーライン反復)。
|
1つの場所にすべてのテキストが必要な場合は StringIO
を使えばいいよ
|
By Anonta | 回答日時: 2017年9月15日 10:36
回答2:
こんなのはどう?
|
こんな風に呼び出せる:
|
それか
|
By Lohmar ASHAR | 回答日時: 2017年9月15日 10:26
回答3:
multiple_files
がすべてのファイル名を含むリストであるとしよう
|
すべてを放り込む出力ファイルを開く
|
この方法だと、ファイルの各行をいちいち読む必要はないよ。
上記の方法は簡単だけど、fileinput モジュールでも代替できる:
fileinputを使用すると、複数のファイルにアクセスして処理することができるよ。
例:with fileinput.input(files=('file1.txt', 'file2.txt')) as f: for line in f: process(line)
By bhansa | 回答日時: 2017年9月18日 17:19
Source: Concatenate multiple files into a single file object without creating a new file