Python 压缩文件脚本:使用rar命令将文件压缩成zip格式
这段代码是一个简单的 Python 脚本,用于将指定文件压缩为 zip 格式。它使用 rar 命令来实现压缩功能。
代码解释:
-
定义
compress函数:- 函数接收三个参数:
input_file(待压缩文件的路径及文件名),output_file(压缩文件的输出路径及文件名),root_path(根目录路径)。 - 构造
cmd_command命令,使用rar_path变量指定rar命令的路径,将待压缩文件和输出文件作为参数,生成压缩文件。这里使用了字符串格式化的方法,其中%s表示占位符,%后面的变量是要替换的内容。 - 切换工作目录到根目录路径,使用
os.system()函数执行cmd_command命令。 - 如果命令执行成功(返回值为 0),则打印 'Successful backup to' 和输出文件路径;否则打印 'Backup FAILED' 和输入文件路径。
- 函数接收三个参数:
-
主函数:
- 指定根目录路径
root_path。 - 使用
os.listdir()函数列出所有文件和子目录。 - 遍历每个文件,将文件名添加单引号并作为
compress()函数的输入参数调用,实现对每个文件的压缩。
- 指定根目录路径
代码示例:
import os
def compress(input_file, output_file, root_path):
rar_path = 'r' # 替换为实际的 rar 命令路径
cmd_command = r'%s a %s %s' % (rar_path, output_file, input_file)
os.chdir(root_path) # 切换工作目录
os.system(cmd_command)
if os.system(cmd_command) == 0:
print('Successful backup to', output_file)
else:
print('Backup FAILED', input_file)
if __name__ == '__main__':
root_path = r'D:\KT_IQ_ONEYEAR_wch'
lists = os.listdir(root_path)
for fp in lists:
input_file = '''' + fp + '''' #待压缩的文件路径及文件,多加一重引号
output_file = '''' + fp.split('.')[0] + '.zip' ''' #压缩文件的输出路径及文件名,多加一重引号
compress(input_file, output_file, root_path)
总结:
这段代码通过调用 rar 命令实现文件的压缩,功能简单易用。您可以根据实际情况修改 rar_path 和 root_path 变量,并根据需要调整代码逻辑,以实现更复杂的压缩功能。
原文地址: http://www.cveoy.top/t/topic/nyM2 著作权归作者所有。请勿转载和采集!