を使用して、ディレクトリ比較ですから、特定のファイルタイプを除外するための方法はありますが、私が持っているものです。結果から* .lockファイルをフィルタリングしたり除外したりできます。私はdircmpに関連する無視関数を見ましたが、結果を返すことができませんでした。私はPythonの非常に基本的なユーザーです。ここでのpython
1
A
答えて
1
dircomp
さんignore
、リテラルだけをグロブを負いません。それはでfilecmp._filter
を置き換えることにより、修正するのは難しいことではないでしょう
:期待どおりdircmp
を呼び出してから、dircmp(..., ignore=['*.lock'])
前
from fnmatch import fnmatch
def _filter(flist, skip):
return [item for item in flist
if not any(fnmatch(item, pat) for pat in skip)]
filecmp._filter = _filter
はこれを行うには働くだろう。
未テスト。
0
事実の後にフィルタリングを行うことはできますか?
import filecmp
from filecmp import dircmp
def print_right_only(dcmp):
for name in dcmp.right_only:
if name.endswith('.lock'): # Check if it is a lock file.
continue
print "%s not found in %s but found in %s" % (name, dcmp.left,
dcmp.right)
for sub_dcmp in dcmp.subdirs.values():
print_right_only(sub_dcmp)
dcmp = dircmp('E:\GIS', 'J:\GIS')
print_right_only(dcmp)
+0
これも同様に機能しました。ありがとう、mgilson。 –
関連する問題
- 1. ここでのpython
- 2. ここではPython
- 3. ここではPython
- 4. Pythonのプロパティは、ここで
- 5. ここでのpython-2.7
- 6. のpython - ここでは、子
- 7. Socket.getaddrinfoが、ここでのpython
- 8. は、ここでのpython
- 9. はここでのpython
- 10. 私はここでのpython
- 11. Aerospikeここでクエリインデックスのpython
- 12. Pythonのは、:「」ここで
- 13. 私のpythonここ
- 14. のpython BeautifulSoupここ
- 15. は、ここではPython
- 16. Pythonプログラムは、ここで
- 17. Pythonはここでループ
- 18. Pythonはここで別の関数で
- 19. はPythonのsqliteのテーブルはここで
- 20. Pythonの:ここで機能と引数
- 21. N-グラムの分析は、Pythonでここ
- 22. 辞書・エラー - ここでのpython
- 23. pyqt4 qthreadは、ここでのpython
- 24. Pythonの:イテレータはここでどれ
- 25. のpythonは、ここでラムダ関数
- 26. 私はここのPython
- 27. Pythonはここconfluent_kafka
- 28. は、なぜ、このPythonのコードはここで二回
- 29. このPythonコード
- 30. このPythonコード
それはうまくいった。ありがとうございましたDan D. –
技術的には、 'ignore'は' object .__ contains__'だけを見ています。 '__contains__'がグロブまたは正規表現と照合するカスタムのコンテナを作成することができます。私は、実装の詳細をオーバーライドするよりは少しハッキリではないと思う(しかし、まだハッキーです)。 – mgilson