前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python中那些小众但有用的内置模块

python中那些小众但有用的内置模块

作者头像
刘早起
发布2020-04-22 15:35:40
6070
发布2020-04-22 15:35:40
举报
文章被收录于专栏:早起Python

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

pprint:更清晰的打印

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

先来看看print

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

shutil :高级文件操作

shutilPython 中的高级文件操作模块

首先导入相关库

然后创建一个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中比较有用的内置库,当然远不止这么多,剩下的我们就留到以后再介绍吧!

THE END

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-02-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 早起Python 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • pprint:更清晰的打印
  • shutil :高级文件操作
  • logging :记录日志
  • glob :文件模式匹配
  • collections :更多数据结构
  • 计数器
  • 双端队列
  • 带默认值的字典
  • hashlib :字符加密
相关产品与服务
日志服务
日志服务(Cloud Log Service,CLS)是腾讯云提供的一站式日志服务平台,提供了从日志采集、日志存储到日志检索,图表分析、监控告警、日志投递等多项服务,协助用户通过日志来解决业务运维、服务监控、日志审计等场景问题。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档