用python将/home/oduser/temp/下面的文件夹压缩成1.zip文件
时间: 2024-10-11 14:07:07 浏览: 25
你可以使用Python的`zipfile`模块来压缩文件。以下是一个简单的步骤示例:
```python
import zipfile
# 定义源文件夹路径和目标压缩文件名
source_folder = '/home/oduser/temp/'
archive_name = '1.zip'
# 创建一个新的ZipFile对象,指定要保存到的路径
with zipfile.ZipFile(archive_name, 'w', zipfile.ZIP_DEFLATED) as zipf:
# 遍历源文件夹及其内容
for foldername, subfolders, filenames in os.walk(source_folder):
# 将相对路径转换为绝对路径,并添加到压缩文件中
for filename in filenames:
absfn = os.path.join(foldername, filename)
zipf.write(absfn)
print("文件夹已成功压缩为", archive_name)
相关问题
python压缩文件夹为zip
你可以使用Python的zipfile模块来压缩文件夹为zip文件。以下是一个示例代码:
```python
import zipfile
import os
def zipfolder(folder_path, output_path):
"""
压缩文件夹为zip文件
:param folder_path: 需要压缩的文件夹路径
:param output_path: 压缩文件的输出路径
"""
with zipfile.ZipFile(output_path, 'w', zipfile.ZIP_DEFLATED) as zipObj:
for foldername, subfolders, filenames in os.walk(folder_path):
for filename in filenames:
file_path = os.path.join(foldername, filename)
zipObj.write(file_path, os.path.relpath(file_path, folder_path))
# 示例
folder_path = "/path/to/folder"
output_path = "/path/to/output.zip"
zipfolder(folder_path, output_path)
```
在上面的示例代码中,`zipfile.ZipFile(output_path, 'w', zipfile.ZIP_DEFLATED)` 用于创建一个zip文件对象,`zipObj.write(file_path, os.path.relpath(file_path, folder_path))` 用于向zip文件中写入文件。`os.walk()` 用于遍历指定文件夹及其子文件夹中的文件和文件夹。 `os.path.join(foldername, filename)` 用于获取文件的完整路径,`os.path.relpath(file_path, folder_path)` 用于获取文件相对于文件夹的相对路径。
python 压缩文件夹为zip
可以使用Python内置的zipfile模块来压缩文件夹为zip文件。具体实现可以参考以下代码:
```python
import zipfile
import os
def zip_folder(folder_path, zip_path):
"""
压缩文件夹为zip文件
:param folder_path: 文件夹路径
:param zip_path: 压缩后的zip文件路径
"""
with zipfile.ZipFile(zip_path, 'w', zipfile.ZIP_DEFLATED) as zip_file:
for root, dirs, files in os.walk(folder_path):
for file in files:
file_path = os.path.join(root, file)
zip_file.write(file_path, os.path.relpath(file_path, folder_path))
# 示例
zip_folder('/path/to/folder', '/path/to/zipfile.zip')
```
这段代码会将`/path/to/folder`文件夹压缩为`/path/to/zipfile.zip`文件。
阅读全文