zoukankan      html  css  js  c++  java
  • 日常办公小技巧!利用Python对文件进行批量压缩和解压!

    正摸鱼开心着呢,快下班了行政小姐姐突然发过来一堆文件让我帮忙处理下,在经过小姐姐长达五分钟的撒娇后,我迫不得已才答应帮她做一下~

    在这里插入图片描述
    这不是小问题吗,用Python分分钟就能实现文件的压缩和解压~当然批量改名字、批量创建等等都不是问题,今天主要给大家展示一下Python压缩文件和解压。
    在这里插入图片描述
    为了不让大家孤单学习,我特地创了个群,点我直接加入就好了,没事大家一起吹吹牛逼,互相学习交流~点我快速加入

    包括这些东西都直接打包好了,进群直接领取~
    Python 环境、pycharm编辑器/永久激活/翻译插件
    python 零基础视频教程
    Python 界面开发实战教程
    Python 爬虫实战教程
    Python 数据分析实战教程
    python 游戏开发实战教程
    Python 电子书100本
    Python 学习路线规划
    都可以在群里免费领取
    Python 相关问题可解答
    Python 相关外包需求可发布
    Python 相关招聘需求可发布

    在这里插入图片描述

    好了不多哔哔,我们开始今天的正文~
    通常我们用的压缩文件格式有:

    1. rar:Windows 环境下用的比较多的压缩,比较著名的GUI工具是winrar tar: Linux系统下的打包工具,只打包,不压缩;
    2. gz:即gzip,通常只能压缩一个文件。与tar结合起来就可以实现先打包,再压缩;
    3. tgz:即gz。先用tar打包,然后再用gz压缩得到的文件;
    4. zip:不同于gzip,虽然使用相似的算法,可以打包压缩多个文件,不过分别压缩文件,压缩率低于tar;
    5. 7z:7zip压缩软件支持的格式,压缩效率较高;

    当然除了使用Python外,你还可以选择使用压缩解压缩软件或命令手动进行处理。

    zip文件

    zipfile是Python里用来做zip格式编码的压缩和解压缩的module,zipfile里有两个非常重要的class:ZipFile和ZipInfo。ZipFile是主要的类,用来创建和读取zip文件,而ZipInfo是存储的zip文件的每个文件的信息。

    示例代码:
    在这里插入图片描述

    tar.gz文件
    tarfile 模块可以用来读写 tar 归档,包括使用 gzip, bz2 和 lzma 压缩的归档。在使用tarfile是必须了解模式:

    mode 必须是 ‘filemode[:compression]’ 形式的字符串,其默认值为 ‘r’。 以下是模式组合的完整列表:

    模式 动作

    针对特殊的目的,还存在第二种 mode 格式: ‘filemode|[compression]’。 tarfile.open() 将返回一个将其数据作为数据块流来处理的 TarFile 对象:

    模式 动作
    1

    代码示例:

    rar文件

    我们可以使用rarfile来解压.rar的文件,但是不支持用rarfile来压缩rar文件。
    rarfile以下unrar组件,但是使用pip install unrar安装后发现会报如下错误:

    Couldn’t find path to unrar library…

    这是因为 Python下的 unrar 还依赖了RAR官方的库。

    Windows的安装

    Linux的安装

    代码示例:

    7z文件

    要压缩和解压缩.7z文件需要用到py7zr组件。代码示例:

    兄弟们,快去试试吧,冲冲冲!

    在这里插入图片描述

    在这里插入图片描述

  • 相关阅读:
    2.创建第一个启用了服务和数据驱动的silverlight5应用程序
    1.搭建siverlight 5开发环境
    读《C程序设计语言》笔记1
    读《C程序设计语言》笔记2
    郑州轻工业大学OJ 2834.小凯的书架 题解 线段树二分
    洛谷P3834 【模板】可持久化线段树 2/POJ2104 Kth Number 题解 主席树
    洛谷P6883 [COCI20162017#3] Kroničan 题解 状压DP入门题
    CF1586D. Omkar and the Meaning of Life 题解 纪念一下第一道AC的交互题
    冒泡事件
    JavaScript 对象是词典
  • 原文地址:https://www.cnblogs.com/hahaa/p/15249125.html
Copyright © 2011-2022 走看看