文件上传服务器-jupyter 中python解压及压缩方式

1. 文件上传服务器-jupyter 中python解压及压缩方式

在Jupyter中进行文件上传和下载是常见的操作,而对于上传的压缩文件需要进行解压,有时我们还需要对文件进行压缩。

1.1 解压压缩文件

在Python中,可以使用zipfile模块来进行文件的解压和压缩。首先,我们需要导入zipfile模块:

import zipfile

下面是如何解压文件的示例代码:

def unzip_file(file_path, extract_dir):

with zipfile.ZipFile(file_path, 'r') as zip_ref:

zip_ref.extractall(extract_dir)

file_path = 'example.zip'

extract_dir = 'extracted'

unzip_file(file_path, extract_dir)

在上面的代码中,unzip_file函数接受两个参数,分别是要解压的文件路径和要解压到的目标文件夹路径。通过使用zipfile.ZipFile函数打开压缩文件,并使用extractall方法将文件解压到指定目标文件夹。

1.2 压缩文件

如果我们想要将多个文件压缩成一个压缩文件,可以使用zipfile模块中的ZipFile类。

def zip_files(file_paths, zip_file_name):

with zipfile.ZipFile(zip_file_name, 'w') as zipf:

for file_path in file_paths:

zipf.write(file_path)

file_paths = ['file1.txt', 'file2.txt']

zip_file_name = 'compressed.zip'

zip_files(file_paths, zip_file_name)

在上面的代码中,zip_files函数接受两个参数,file_paths是要压缩的文件路径列表,zip_file_name是压缩文件的名称。通过使用zipfile.ZipFile函数创建一个压缩文件,并使用write方法将每个文件逐个添加到压缩文件中。

需要注意的是,如果要将文件夹压缩成一个压缩文件,可以使用shutil模块的make_archive函数。例如:

import shutil

folder_path = 'folder'

zip_file_name = 'compressed.zip'

shutil.make_archive(zip_file_name, 'zip', folder_path)

总结:

Jupyter中的Python解压和压缩文件的方式可以通过zipfile模块和shutil模块来实现。通过使用zipfile模块中的ZipFile类,我们可以将多个文件压缩成一个压缩文件,并且可以使用extractall方法来解压文件。如果要将文件夹压缩成一个压缩文件,可以使用shutil模块的make_archive函数。

后端开发标签