📅  最后修改于: 2023-12-03 15:32:26.894000             🧑  作者: Mango
在Jupyter Notebook或JupyterLab中上传一个或多个文件是直截了当的,但是上传文件夹可以有点棘手。上传文件夹的好处是节省了单独上传每个文件的时间。幸运的是,Python有一个称为“zipfile”的内置库,可以用来处理文件和文件夹压缩。在本教程中,我们将通过使用zipfile和Jupyter来上传整个文件夹。
第一步是将文件夹压缩为zip文件。我们可以使用zipfile库完成此操作。
import zipfile
def zipdir(path, ziph):
# 打包整个文件夹
for root, dirs, files in os.walk(path):
for file in files:
ziph.write(os.path.join(root, file))
zipf = zipfile.ZipFile('my_folder.zip', 'w', zipfile.ZIP_DEFLATED)
zipdir('my_folder', zipf)
zipf.close()
这段代码将整个文件夹“my_folder”压缩到名为“my_folder.zip”的文件中。确保更改路径以反映您实际的文件夹位置。
第二步是在Jupyter中上传zip文件。有两种方法可以完成此操作:
在Jupyter中,选择“New”选项卡,然后选择“Upload”选项。选择要上传的zip文件(即“my_folder.zip”)。上传完成后,将文件从文件浏览器拖动到notebook中的任何代码单元格或markdown单元格。
在Jupyter中,选择“File”选项卡,然后选择“Upload”选项。选择要上传的zip文件(即“my_folder.zip”)。上传完成后,使用以下代码单元格或markdown单元格将文件解压缩。
import zipfile
with zipfile.ZipFile("my_folder.zip", 'r') as zip_ref:
zip_ref.extractall("./")
import os
import zipfile
# 压缩文件夹
def zipdir(path, ziph):
# 打包整个文件夹
for root, dirs, files in os.walk(path):
for file in files:
ziph.write(os.path.join(root, file))
zipf = zipfile.ZipFile('my_folder.zip', 'w', zipfile.ZIP_DEFLATED)
zipdir('my_folder', zipf)
zipf.close()
# 解压缩zip文件
with zipfile.ZipFile("my_folder.zip", 'r') as zip_ref:
zip_ref.extractall("./")
# 确认文件夹已解压缩
print(os.listdir())
通过使用zipfile和Jupyter,我们可以轻松地将整个文件夹上传到Jupyter Notebook或JupyterLab中。