こんにちは、まずここに私のコードがあります:
import os
rootdir= 'C:\Documents and Settings\Guest\My Documents\SC\Actual work\Part2\New Folder'
for subdir, dirs, files in os.walk(rootdir):
for file in files:
f=open(file,'rU')
lines = f.readlines()
f.close()
for line in lines:
if "2002" in line:
print line
これにより、ディレクトリ内のすべてのファイルを検索し、2002 に一致する行のみを出力するという、私が注意を払った結果が得られます。これにより、それらがシェルの 2002 値の長いリストに出力されます。
私が知りたいのは、後で呼び出されるように各データをそのファイルに関連付ける方法があることです。つまり、ループのどこかに追加/拡張ステートメントを追加して、各データをそのファイルに関連付けることができます。つまり、私が望む出力は次のとおりです。
datafile("name") = [list of all 2002 matches]
datafile("name2") = [list of all 2002 matches in file 2]
これらのリストを後で呼び出すことができるようにします。コード内でその場でリストを検索して作成するようにしたいと思います。私の新しいコードは以下のとおりですが、すべての最初のファイル データを 1 つのリストにグループ化するわけではなく、各一致をリストに出力するだけです。
rootdir= 'C:\Documents and Settings\Guest\My Documents\SC\Actual work\Part2\New Folder'
for subdir, dirs, files in os.walk(rootdir):
for file in files:
f=open(file,'rU')
lines = f.readlines()
f.close()
for line in lines:
newlist=[]
if "2011" in line:
x= newlist.append(line)
print newlist