1

現在直面している問題は、次のシナリオから来ています。特定のフォルダー内の特定の拡張子のすべてのファイルを検索するコマンドライン プログラムを実行するスクリプトがあります。これらのファイルをファイル A と呼びます。スクリプトの別のセクションでは、ファイル A 内のファイル名の各ファイルに対して grep コマンドを実行します。どのファイル名がファイル A にあり、ファイル A のみにあるのかを保存する最良の方法と、どうすればそれを達成できますか? ありがとう

4

1 に答える 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 に答える