使用python压缩一个文件,文件名需要是变量
时间: 2024-03-25 14:38:26 浏览: 53
你可以使用Python的`tarfile`模块来实现文件压缩。以下是一个使用变量作为文件名的示例代码:
```python
import tarfile
filename = "compressed.tar.gz"
file_to_compress = "file.txt"
with tarfile.open(filename, "w:gz") as tar:
tar.add(file_to_compress)
print("File compressed as", filename)
```
其中,`filename`是你要压缩成的文件名,`file_to_compress`是你要压缩的文件名,可以是变量。`tarfile.open()`函数中的参数`"w:gz"`表示创建一个`gzip`压缩格式的压缩文件。
运行以上代码后,会将`file.txt`文件压缩成`compressed.tar.gz`文件。
相关问题
python接收到压缩文件,获取文件名
可以使用Python自带的zipfile模块来解压缩文件并获取文件名。示例代码如下:
```
import zipfile
# 假设接收到的压缩文件名为example.zip
with zipfile.ZipFile('example.zip', 'r') as zip_ref:
# 获取压缩文件中的所有文件名
file_names = zip_ref.namelist()
print('文件名列表:', file_names)
```
在上面的代码中,首先使用`zipfile.ZipFile`打开压缩文件,并以只读方式读取其中的内容。然后,使用`namelist()`方法获取压缩文件中的所有文件名,并将其存储在`file_names`变量中。最后,输出文件名列表。
Python 批量压缩txt文件
以下是一个Python脚本,可以批量压缩指定文件夹中的所有txt文件:
```python
import os
import zipfile
# 定义要压缩的文件夹路径和压缩后的文件名
folder_path = 'path/to/folder'
zip_file_name = 'compressed.zip'
# 创建一个ZipFile对象,准备写入压缩文件
zip_file = zipfile.ZipFile(zip_file_name, 'w')
# 遍历指定文件夹中的所有txt文件
for filename in os.listdir(folder_path):
if filename.endswith('.txt'):
file_path = os.path.join(folder_path, filename)
# 将文件添加到压缩文件中
zip_file.write(file_path, filename)
# 关闭ZipFile对象
zip_file.close()
print(f'已将{folder_path}中的所有txt文件压缩为{zip_file_name}。')
```
将上述代码保存为一个.py文件,然后将`folder_path`和`zip_file_name`变量替换为实际的文件夹路径和压缩文件名,最后运行脚本即可。
阅读全文