2017-10-25 8 views
1

アーカイブ内のファイルを別のパスにコピーする簡単な方法はありますか?もちろん、shutfileを使用する簡単な方法は動作しません:アーカイブから別のディレクトリにファイルをコピーするpython

from shutil import copyfile 
copyfile("path/archive/file.ext", "newpath/newfile.ext") 
FileNotFoundError: [Errno 2] No such file or directory: 

LE:私はからファイルを抽出した場合、私は(パスにzipアーカイブを持っているので、それはおそらく現れるので、芋、エラーは、誤解を招くおそれがありアーカイブとパスを変更、それは問題なく動作しますが、私の問題は、それがアーカイブを通過しないということである)

+0

2つの問題が考えられます.1)ファイルがディレクトリにないか、2)パスが間違っている。 – Alperen

+0

ソースファイル 'path/archive/file.ext'が存在することを確認してください。ディレクトリ 'path'はあなたのスクリプトと同じディレクトリ(または現在のディレクトリ)に存在するはずです。 – sam

+0

OSとは何ですか?ウィンドウのユーザが '/'の代わりに '/'の場合 –

答えて

0

私が見つけた最も簡単な方法:

import os 
import zipfile 
import shutil 

with zipfile.ZipFile(os.path.join(basePath + arcName)) as z: 
    with z.open(fileInArc) as zf, open(os.path.join(newPath, newName), 'wb') as f: 
     shutil.copyfileobj(zf, f) 

それは単にディレクトリ内の単一のファイルを解凍しますあなたが選んだ名前が必要です

関連する問題