0

この例では、1,2,3,4,...100 など、ランダムな名前のフォルダーが約 100 個あります。これらのフォルダー内には、いくつかの文字列を含むテキスト ファイルがあります。例: sample.txt。

テキスト ファイルはすべて同じ名前ですが、異なるフォルダーにあります。必要なのは、これらのフォルダー内からファイルを読み取り、これらのファイル内のテキストを読み取り、これらのテキスト ファイルの場所を印刷または保存することです。

ファイルが自分のpwdにある場合にファイルから行を読み取り、その中のものを探す方法しか知りません。そのために次のコードを使用します。

with open(r'Example.txt', 'r') as infile_txt:
    for line in infile_txt:
        if r"sample" in line:
            print line

フォルダー内からファイルを読み取り、これらのフォルダーの名前を記録するにはどうすればよいですか?

4

2 に答える 2

1

そのためにosを使用できます。例えば:

import os
list_downloads = os.listdir("C:/Users/user/Downloads")

これにより、リスト内のすべてのサブフォルダーとファイルが表示されます。次に、リストを走査して必要なサブフォルダーを見つけ、アクションを繰り返すことができます。

于 2016-12-23T00:04:04.137 に答える
0
import os
import re
from os.path import join, getsize

with open('output.txt','w') as out_file:
    for root,subFolders, files in os.walk(r"C:\Users\USER007\Desktop\Python Scripts\Reading metadata\files"):
        if r'MetaData.txt' in files:
            with open(os.path.join(root, 'MetaData.txt'), 'r') as in_file:
                for lines in in_file:
                    if r'THIS' and r'THAT' and r'THOSE' in lines:
                        print root

上記のコードは私にとってはうまくいきました。

于 2016-12-23T00:38:32.187 に答える