0

いくつかの dbf 形式のファイルを含む 3 つのフォルダー (たとえば、folder1、folder2、および folder3) があります。私が持っているとします:

0345.dbf, 2345.dbf, 4444.dbf, 6767.dbf, 7623.dbf in folder1
0222.dbf, 0345.dbf in folder2
3423.dbf, 4827.dbf, 5635.dbf, 7623.dbf in folder3

したがって、たとえば「0345.dbf」は、folder1 と folder2 が表示されます。同様に、folder1 と folder3 には 2 つの「7623.dbf」があります。しかし、それらはすべて異なる内容の異なるファイルです。

次のように、2 つの列を持つ csv ファイル (list.csv) に追加情報が保存されています。

0222 f2
0345 f2
2345 f1
3423 f3
4444 f1
4827 f3
5635 f3
6767 f1
7623 f3

そのルールに従って、「0345.dbf」は、folder1 からではなく、folder2 から選択する必要があります。また、folder1 からではなく、folder3 からの「7623.dbf」。

csvファイルに書かれている選択ルールに従って、9つのファイルをすべて集めてフォルダ(たとえば、「d:/collect」)に保存するにはどうすればよいですか? ありがとう。

4

1 に答える 1

1

CSVファイルをdictに読み込み、column1をcolumn2にマッピングします。入力フォルダを読み取るときに、各ファイルの拡張子を付けずにベース名を追加します(os.listdirたとえば、拡張子をrsplitまたはで切り取りますrpartition)。dictでのルックアップが現在のディレクトリ名と一致する場合は、これを使用します。そうでなければ、そうではありません。

于 2012-05-13T22:36:21.573 に答える