ディレクトリに「foo.bill.me.txt」という名前のファイルがあり、同じディレクトリに「foo.txt」という名前のファイルもあります。「foo.bill.me.txt」の名前を「foo.txt」に変更し、元の「foo.txt」を上書きしてから、「foo.bill.me.txt」を削除します。
1 に答える
1
これは本当にjythonのタグが付けられていますか。その場合は、pythonosモジュールのドキュメントを使用してください
これにより、UNIXフレーバーでアトミック操作が実行されます。
os.rename('foo.bill.me.txt','foo.txt')
Windowsの場合、名前変更のドキュメントは次のようになります。
Windowsでは、dstがすでに存在する場合、ファイルであってもOSErrorが発生します。dstが既存のファイルに名前を付ける場合、アトミックな名前変更を実装する方法がない場合があります。
したがって、Windowsでは、「非アトミック」という2つのステップが必要です。
os.remove('foo.txt')
os.rename('foo.bill.me.txt','foo.txt')
于 2012-07-12T05:07:47.717 に答える