現在直面している問題は、次のシナリオから来ています。特定のフォルダー内の特定の拡張子のすべてのファイルを検索するコマンドライン プログラムを実行するスクリプトがあります。これらのファイルをファイル A と呼びます。スクリプトの別のセクションでは、ファイル A 内のファイル名の各ファイルに対して grep コマンドを実行します。どのファイル名がファイル A にあり、ファイル A のみにあるのかを保存する最良の方法と、どうすればそれを達成できますか? ありがとう
1 に答える
2
編集:前の質問をしたのはあなただったようです!なぜ新しいものを開くのですか?
この正確な問題について、最近質問がありました。モデリングしている構造は有向グラフです。Pythonのパッケージを使用して、その質問に対する私の回答を参照してください。networkx
データの後処理を行う場合は、このパッケージを使用することをお勧めします。ただし、単純な状況では、独自のデータ構造を作成できます。以下は、グラフの隣接リスト表現を使用したサンプルです。代わりに隣接行列を使用することは難しくありません。
from collections import defaultdict
adj_list = defaultdict( set )
for filename in os.listdir( <dir> ):
with open( filename ) as theFile:
for line in theFile:
# parse line into filename, say 'target'
adj_list[ filename ].add( target )
これにより、ファイル名の辞書が表示されます->そのファイルによってリンクされたファイル。
于 2010-08-25T12:25:00.853 に答える