-3

多くのサブディレクトリに散在する多くのテキストファイルがあります。単一の集約テキストファイルをコンパイルしたいだけです。私の要件は、各行のプレフィックスとしてファイル名を含むディレクトリ構造を持つ必要があるテキストファイルを生成することです。TIA

4

1 に答える 1

2
import os
root = './'
files = [(path,f) for path,_,file_list in os.walk(root) for f in file_list]
out_file = open('master.txt','w')
for path,f_name in files:
    in_file = open('%s/%s'%(path,f_name), 'r')

    # write out root/path/to/file (space) file_contents
    for line in in_file:
        out_file.write('%s/%s %s'%(path,f_name,line))
    in_file.close()

    # enter new line after each file
    out_file.write('\n')

out_file.close()

ルート化されたツリーの一部のファイルのみが必要な場合はroot、3行目を次のように変更します。

# only take .txt files from the directory tree
files = [(path,f) for path,_,file_list in os.walk(root) for f in file_list if f.endswith('.txt')]
于 2012-08-28T10:14:06.507 に答える