今天带来的是python里一些小众但是却比较实用的python库,一起来看看吧!

很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:1097524789

pprint:更清晰的打印

pprint 是 pretty printer 的缩写,用来打印 Python 数据结构,与 print 相比,它打印出来的结构更加整齐,便于阅读。

先来看看print

再来看看pprint,是不是打印出来更加方便阅读

shutil :高级文件操作

shutil 是 Python 中的高级文件操作模块

首先导入相关库

然后创建一个test.file用于示例,执行完毕工作目录下就会多一个文件test.file

复制文件

现在使用shutil.copy(src, dst)。 将源文件复制到目标地址:

复制文件夹

使用os将文件转移到 test_dir 文件夹:

使用 shutil.copytree 来复制文件夹:

删除非空文件夹

使用 shutil.rmtree 来删除非空文件夹:

移动文件夹

shutil.move 可以整体移动文件夹,与 os.rename 功能差不多。

压缩文件

先看看支持的压缩文件格式:

shutil.make_archive(basename, format, root_dir)可以用来压缩文件

logging :记录日志

打印日志还在用print()吗?logging 模块可以用来记录日志

logging 的日志类型有以下几种:

  • logging.critical(msg)

  • logging.error(msg)

  • logging.warning(msg)

  • logging.info(msg)

  • logging.debug(msg)

级别排序为:CRITICAL > ERROR > WARNING > INFO > DEBUG > NOTSET

默认情况下,logging 的日志级别为 WARNING,只有不低于 WARNING 级别的日志才会显示在命令行。

也可以这样修改默认的日志级别:

也可以通过 logging.basicConfig() 函数来改变默认的日志显示方式:

glob :文件模式匹配

glob 模块提供了方便的文件模式匹配方法。

例如,找到所有以 .txt结尾的文件名:

或者是匹配数字开头的文件夹名:

collections :更多数据结构

计数器

可以使用 Counter(seq) 对序列中出现的元素个数进行统计。例如,我们可以统计一段文本中出现的单词及其出现的次数:

双端队列

双端队列支持从队头队尾出入队,与列表相比,双端队列在队头的操作更快:

带默认值的字典

对于 Python 自带的词典 d,当 key 不存在的时候,调用 d[key] 会报错,但是 defaultdict 可以为这样的 key 提供一个指定的默认值,我们只需要在定义时提供默认值的类型即可,如果 key 不存在返回指定类型的默认值:

hashlib :字符加密

hashlib主要提供字符加密功能,将md5和sha模块整合到了一起,支持md5,sha1, sha224, sha256, sha384, sha512等算法

比如,我们来试试将早起python进行加密

以上加密算法虽然依然非常厉害,但有时候存在缺陷,即:通过撞库可以反解。所以,有必要对加密算法中添加自定义key再来做加密。

Python编程模块里一些小众但是却比较实用的python内置库相关推荐

  1. 群里又会python的吗_自从会了Python在群里斗图就没输过,Python批量下载表情包!...

    原标题:自从会了Python在群里斗图就没输过,Python批量下载表情包! 导语 最近图慌,于是随便写了个表情包批量下载的脚本,没什么技术含量,纯娱乐性质. 让我们愉快地开始吧~ 开发工具 Pyth ...

  2. python编程教学视频-【科研资源03】最全Python编程全套系统视频学习教程

    原标题:[科研资源03]最全Python编程全套系统视频学习教程 01 资源介绍 从事Python开发这么久,也了解了不少,我发现Python主要有以下四大主要应用:网络爬虫.web开发.人工智能.自 ...

  3. Python编程常见出错信息及原因分析(5):安装扩展库

    本文主要介绍使用pip安装扩展库时常见的错误. (1)pip命令应该在命令提示符环境中执行,如果在Python开发环境中执行,则会出现下面的错误: (2)不存在要安装的扩展库,此时应仔细检查是否有拼写 ...

  4. python编程入门指南-最简单的Python编程入门指南,没基础也能快速入门Python编程...

    原标题:最简单的Python编程入门指南,没基础也能快速入门Python编程 对Python这门编程语言来讲,几乎是没什么不能做到的.最难的不过是如何入门,也就是你进入Python编程的第一步. 其实 ...

  5. python内置库有哪些_python 内置库

    广告关闭 回望2020,你在技术之路上,有什么收获和成长么?对于未来,你有什么期待么?云+社区年度征文,各种定制好礼等你! version: 0. 2.0, configurations: }, de ...

  6. [转载] python自带sqlite库_Python内置库SQlite3使用指南

    参考链接: 使用Python和SQLite的SQL 2 如果你是软件开发人员,相信你一定知道或者曾经使用过一个非常轻量级的数据库--SQLite.它具有作为关系数据库所需的几乎所有功能,但是这个数据库 ...

  7. python内置库之学习configparser库(一)

    python内置库之学习configparser库(一) 1.引言 ini文件简介 [节] 键=值 注:节不能重复出现 2.自己封装了一个增删改查的类,可以参考一下 import configpars ...

  8. random输出1到10之间_第43P,随机数,Python内置库之random

    大家好,我是杨数Tos,这是<从零基础到大神>系列课程的第43篇文章,第二阶段的课程:Python基础知识:Python内置库之random随机库. 学习本课程,建议先看一遍:[计算机基础 ...

  9. python好用的内置库_第42p,time库,Python中优秀的内置库

    大家好,我是杨数Tos,这是<从零基础到大神>系列课程的第42篇文章,第二阶段的课程:Python基础知识:Python内置库之time. 一.时间的三种格式 time是Python的内置 ...

最新文章

  1. iOS Automated Tests with UIAutomation
  2. GPS实时跟踪程序模拟(2)动画回放
  3. Spring Boot和Feign中使用Java 8时间日期API(LocalDate等)的序列化问题
  4. KMP算法的Next数组详解(转)
  5. 【渝粤教育】广东开放大学 教育心理学 形成性考核 (42)
  6. Qt控件大小自适应电脑分辨率问题
  7. IQueryable和IEnumerable区别
  8. BeautifulSoup4 find_all搜索包含指定文本内容的标签返回空list的问题
  9. 谐振功率放大器的工作原理
  10. 互联网晚报 | 11月10日 星期三 | 华为捐赠欧拉开源操作系统;微信支持导出个人信息;12306上线铁水联运服务...
  11. PS制作透明图片png格式
  12. 六一儿童节倾情奉献,校内首发,CSDN再发,2011年冬季c/c++程序员找工作心得
  13. oppo android多大内存,OPPO R9的内存容量是多少
  14. callee、caller、call、apply、bind这些方法的含义和使用
  15. 爱陆通研习社,水利RTU、环保数采仪、遥测终端机定义,4G5G课堂
  16. 解决Flutter出现Warning: Mapping new ns http://schemas.android.com/repository/android/common/02 to 问题
  17. 开发一个类似美团的外卖小程序多少钱
  18. learn opencv-使用OpenCV的自动红眼删除
  19. 汉语言专家级C1,汉语言文学专业审核(文科生均可参考)
  20. 微信小程序 API的 promise化

热门文章

  1. django-模型类的修改-外键
  2. laravel-admin 在指定的相册下添加照片
  3. MBA已经全面***“中国式教育”!
  4. 2018-07-06笔记(LNMP配置)
  5. Hibernate-04-实体编写规范
  6. 我的linux学习之旅:(4)搭建mysql数据库
  7. silverlightLogo动画
  8. 在 git hooks 中运行 npm script
  9. Vue服务端配置示例
  10. 容器编排技术 -- Kubernetes 给容器和Pod分配CPU资源