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函数。