我正在与一个朱庇特笔记本在谷歌的合作,我想解压缩文件,它是在我的谷歌驱动器到/tmp文件夹。
我试过这样做:
import os
root_dir = '/tmp/omniglot/data/'
!unzip '/content/gdrive/My Drive/Colab Notebooks/data/omniglot.zip' -d path.path(root_dir)
但我知道错误是:
语法错误接近意外令牌`()
我也尝试过:
from pathlib import Path
root_dir = '/tmp/omniglot/data/'
!unzip '/content/gdrive/My Drive/Colab Notebooks/data/omniglot.zip' -d Path(str_path)
但我也犯了同样的错误。
如何在解压缩时使用字符串root_dir
?
我的Python版本是3.6.9。
发布于 2020-01-23 09:15:41
使用{varname}
语法将Python变量传递到shell中。
import os
root_dir = '/tmp/omniglot/data/'
os.makedirs(root_dir, exist_ok=True) # Create a target directory if doesn't exist
!unzip '/content/gdrive/My Drive/Colab Notebooks/data/omniglot.zip' -d {root_dir}
您还可以使用标准库中的You文件。
import zipfile
root_dir = '/tmp/omniglot/data/'
zip_file = '/content/gdrive/My Drive/Colab Notebooks/data/omniglot.zip'
with zipfile.ZipFile(zip_file, 'r') as zip_ref:
zip_ref.extractall(root_dir)
发布于 2020-01-23 09:08:58
我就是这样做的(不使用!unzip
命令):
import os
import zipfile
from pathlib import Path
# Create destination folder if it doesn't exist.
Path(root_dir).mkdir(parents=True, exist_ok=True)
local_zip = '/content/gdrive/My Drive/Colab Notebooks/data/omniglot.zip'
zip_ref = zipfile.ZipFile(local_zip, 'r')
zip_ref.extractall(root_dir)
zip_ref.close()
https://stackoverflow.com/questions/59874377
复制相似问题