5

を使用してアーカイブ ディレクトリに移動するソース ファイルがあります。

shutil.move(srcfile, dstdir)

ただし、同じファイルがアーカイブ先ディレクトリに既に存在する場合、移動できないというエラーがスローされます。ファイルは既に存在します。そこで、既存のファイルを上書きしたいと思います。それを行う方法はありますか?

4

1 に答える 1

4

これと同じ質問がありました。他の誰かが解決策を探している場合に備えて、これが私がやったことです。

shutil のドキュメントによると、これを行う直接的な方法はありません。ただし、を使用して簡単に修正できますos.remove()。ソース ディレクトリにいて、ファイル 'srcfile' を 'dstdir' に移動するとします。

import shutil, os
try:
    os.remove(dstdir+'srcfile')
except OSError:
    pass
else:
    shutil.move(srcfile, dstdir)`

これは、ファイルを移動する前に「srcfile」の「dstdir」をクリアしようとします。

于 2014-07-11T21:59:48.887 に答える