• 代码实现压缩文件(zipfile模块)


    压缩文件

    zipfile模块用来处理文件的压缩和解压缩操作。

    import os
    import zipfile  # 导入模块
    # BASE_STATIC_CASE_RESULT:我Django static下面的某个路径
    
    BASE = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
    
    base_dir = os.path.join(BASE,'Scripts','report',"allure_html")  # 要压缩文件夹的根路径
    
    zip_file_name = 'temp.zip'  #压缩文件的名字
    
    f = zipfile.ZipFile(os.path.join(BASE, zip_file_name), 'w', zipfile.ZIP_DEFLATED)
    						#上边os.path.join(BASE, zip_file_name是压缩文件成功后存放的路径
    #以下内容权当固定写法						
    for dir_path, dir_name, file_names in os.walk(base_dir):
        # 要是不replace,就从根目录开始复制
        file_path = dir_path.replace(base_dir, '')
        # 实现当前文件夹以及包含的所有文件
        file_path = file_path and file_path + os.sep or ''
        for file_name in file_names:
            f.write(os.path.join(dir_path, file_name), file_path + file_name)
    f.close()
    

    路径一定要拼接好,要拼接压缩文件的根路径

    创建压缩文件

    import zipfile
    def zip_files( files, zip_name ):
    	zip = zipfile.ZipFile( zip_name, 'w', zipfile.ZIP_DEFLATED )
    	for file in files:
    		print ('compressing', file)
    		zip.write( file )
    	zip.close()
    	print ('compressing finished')
    	
    files = ['.\123.txt','.\3.txt']#文件的位置,多个文件用“,”隔开
    zip_file = '.\m66y.zip' #压缩包名字
    zip_files(files, zip_file)
    
  • 相关阅读:
    (转)Java线程:线程的同步与锁
    (转)线程栈模型与线程的变量、线程状态转换
    (转)概念与原理
    Oracle 技术支持之现场优化的思维路径
    oracle复合索引的选择和使用
    oracle中sql执行性能关注点
    oracle中位图索引和B-tree索引的区别
    oracle锁表
    oracle索引的理解
    oracle海量数据中提升创建索引的速度
  • 原文地址:https://www.cnblogs.com/zzsy/p/12245904.html
Copyright © 2020-2023  润新知