分享3个非常实用的 Python 模块


Posted in Python onMarch 03, 2022

一、Psutil

Python当中的Psutil模块是个跨平台库,它能够轻松获取系统运行的进程和系统利用率,包括CPU、内存、磁盘、网络等信息,它的安装也非常的简单,

命令行:

pip install psutil

这里因为整体的篇幅有限,小编就暂时只罗列几个常用的方法,例如我们想要查看一下CPU的利用率

psutil.cpu_percent()

返回的结果表示的是当前系统范围的CPU利用率百分比,如果我们要查看系统中CPU的个数,

代码如下:

## 逻辑CPU的个数
psutil.cpu_count()

## 物理CPU的个数
psutil.cpu_count(logical=False)

又或者我们想要查看一下系统中的物理内存,代码如下:

## 剩余的物理内存
free = str(round(psutil.virtual_memory().free / (1024.0 * 1024.0 * 1024.0), 2))

## 物理内存总共有
total = str(round(psutil.virtual_memory().total / (1024.0 * 1024.0 * 1024.0), 2))

而如果我们想要查看单个磁盘的信息,就直接调用disk_usage()方法

print(psutil.disk_usage('C:\\'))

而去获取所有磁盘的信息,调用的则是disk_partitions()方法

print(psutil.disk_partitions())

另外我们也还能够获取到系统的启动时间

from datetime import datetime
print(u"系统启动时间: %s" % datetime.fromtimestamp(psutil.boot_time()).strftime("%Y-%m-%d %H:%M:%S"))

二、Pendulum

一般我们都是用datatime模块来处理日期、时间等数据,但是不得不说在于datatime模块也有自身的一些限制,例如在处理时区时就会显得有些不足,这次我们来介绍一下Pendulum模块

首先我们用pip命令行来进行安装:

pip install pendulum

pendulum模块最令人印象深刻的功能是时区,例如我们想要知道“巴黎”此时的时间,可以这么来做

now_in_paris = pendulum.now('Europe/Paris')
print(now_in_paris)

output:

2022-01-22T14:59:06.484816+01:00

还可以知道当天的日期:

d1 = pendulum.yesterday() # 昨天
d2 = pendulum.today() # 今天
d3 = pendulum.tomorrow() # 明天

output:

2022-01-21T00:00:00+08:00 # 昨天的日期
2022-01-22T00:00:00+08:00 # 今天
2022-01-23T00:00:00+08:00 # 明天

我们还可以在时间的数据上进行加、减,调用的是addsubtract方法

dt = pendulum.datetime(2022, 1, 22)
dt_years_add = dt.add(years=5)
print(dt_years_add)
dt_years_subtract = dt.subtract(years=1)
print(dt_years_subtract)
dt_month_add = dt.add(months=60)
print(dt_month_add)
dt_month_subtract = dt.subtract(months=60)
print(dt_month_subtract)

output:

2027-01-22T00:00:00+00:00
2021-01-22T00:00:00+00:00
2027-01-22T00:00:00+00:00
2017-01-22T00:00:00+00:00

要是我们希望将时间数据转换成字符串,就可以这么来做,代码如下:

dt = pendulum.datetime(2022, 1, 23, 15, 16, 10)

要是我们需要的是前缀的日期字符串,则可以这么来做

dt.to_date_string()

output:

2022-01-23

而要是我们需要的是后缀的时间字符串,则可以这么来做

dt.to_time_string()

output:

15:16:10

当然我们有时候日期和时间都需要,代码如下:

dt.to_datetime_string()

output:

2022-01-23 15:16:10

或者是:

dt.to_day_datetime_string()

output:

Sun, Jan 23, 2022 3:16 PM

当然该模块还有其他很多强大的功能,具体的大家可以去看它的文档,最后我们要说的是其人性化时间的输出功能。

如果我们平时用搜素引擎的话,就会看到有很多内容的时间被标成了“1天前”、“1周后”等等,这个在pendulum模块当中也能够轻而易举的实现

print(pendulum.now().subtract(days=1).diff_for_humans())
## '1 day ago'

print(pendulum.now().diff_for_humans(pendulum.now().subtract(years=1)))
## '1 year after'

print(pendulum.now().subtract(days=24).diff_for_humans())
## '3 weeks ago'

可能有些人要是英文看不懂的话,我们也可以切换到中文,如下:

print(pendulum.now().subtract(days=14).diff_for_humans())
## '2周前'

print(pendulum.now().add(seconds=5).diff_for_humans())
## '5秒钟后'

三、Pyfiglet

pyfiglet是一个专门用来生成艺术字的模块,并且支持有多种艺术字的字体,

我们来看一下下面这个例子:

result = pyfiglet.figlet_format("Python", font="larry3d")
print(result)

output:

 ____           __    __                         
/\  _`\        /\ \__/\ \                        
\ \ \L\ \__  __\ \ ,_\ \ \___     ___     ___    
 \ \ ,__/\ \/\ \\ \ \/\ \  _ `\  / __`\ /' _ `\  
  \ \ \/\ \ \_\ \\ \ \_\ \ \ \ \/\ \L\ \/\ \/\ \ 
   \ \_\ \/`____ \\ \__\\ \_\ \_\ \____/\ \_\ \_\
    \/_/  `/___/> \\/__/ \/_/\/_/\/___/  \/_/\/_/
             /\___/                              
             \/__/                               

要是大家不喜欢上面的字体,可以通过下面的代码

pyfiglet.FigletFont.getFonts()

在输出的所有字体当中任选一个来进行艺术字的塑造

到此这篇关于分享3个非常实用的 Python 模块的文章就介绍到这了,更多相关 Python 模块内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中字符串格式化str.format的详细介绍
Feb 17 Python
Python初学时购物车程序练习实例(推荐)
Aug 08 Python
python的文件操作方法汇总
Nov 10 Python
mac PyCharm添加Python解释器及添加package路径的方法
Oct 29 Python
Django学习笔记之为Model添加Action
Apr 30 Python
python web框架中实现原生分页
Sep 08 Python
python wxpython 实现界面跳转功能
Dec 17 Python
sublime3之内网安装python插件Anaconda的流程
Nov 10 Python
Django contrib auth authenticate函数源码解析
Nov 12 Python
python 视频下载神器(you-get)的具体使用
Jan 06 Python
python编写扎金花小程序的实例代码
Feb 23 Python
python获取带有返回值的多线程
May 02 Python
详解在OpenCV中如何使用图像像素
 Python 中 logging 模块使用详情
Mar 03 #Python
分享7个 Python 实战项目练习
Mar 03 #Python
python工具dtreeviz决策树可视化和模型可解释性
Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解
python机器学习实现oneR算法(以鸢尾data为例)
Mar 03 #Python
详解python的异常捕获
Mar 03 #Python
You might like
PHP Header用于页面跳转要注意的几个问题总结
2008/10/03 PHP
Yii框架调试心得--在页面输出执行sql语句
2014/12/25 PHP
PHP实现删除多重数组对象属性并重新赋值的方法
2017/06/07 PHP
jQuery入门知识简介
2010/03/04 Javascript
JavaScript高级程序设计 XML、Ajax 学习笔记
2011/09/10 Javascript
JS中三目运算符和if else的区别分析与示例
2014/11/21 Javascript
jQuery实现在textarea指定位置插入字符或表情的方法
2015/03/11 Javascript
利用jQuery实现漂亮的圆形进度条倒计时插件
2015/09/30 Javascript
详解Angular开发中的登陆与身份验证
2016/07/27 Javascript
Vuex和前端缓存的整合策略详解
2017/05/09 Javascript
浅谈layui数据表格判断问题(加入表单元素),设置单元格样式
2019/10/26 Javascript
深入浅析vue全局环境变量和模式
2020/04/28 Javascript
跟老齐学Python之眼花缭乱的运算符
2014/09/14 Python
深入理解Python中的元类(metaclass)
2015/02/14 Python
在SAE上部署Python的Django框架的一些问题汇总
2015/05/30 Python
Python实现建立SSH连接的方法
2015/06/03 Python
Python中几种导入模块的方式总结
2017/04/27 Python
Python实现的tcp端口检测操作示例
2018/07/24 Python
python设定并获取socket超时时间的方法
2019/01/12 Python
python实现网站微信登录的示例代码
2019/09/18 Python
python 爬取疫情数据的源码
2020/02/09 Python
Python要如何实现列表排序的几种方法
2020/02/21 Python
解决Jupyter Notebook开始菜单栏Anaconda下消失的问题
2020/04/13 Python
浅析python中的del用法
2020/09/02 Python
详解CSS3中nth-child与nth-of-type的区别
2017/01/05 HTML / CSS
澳大利亚在线购买儿童玩具:Toy Universe
2017/12/28 全球购物
澳大利亚最超值的自行车之家:Reid Cycles
2019/03/24 全球购物
Travelstart沙特阿拉伯:廉价航班、豪华酒店和实惠的汽车租赁优惠
2019/04/06 全球购物
《狼》教学反思
2014/03/02 职场文书
幼儿园家长评语大全
2014/04/16 职场文书
大学英语演讲稿范文
2014/04/24 职场文书
技术比武方案
2014/05/19 职场文书
幼儿园母亲节活动总结
2015/02/10 职场文书
2015年教师业务工作总结
2015/05/26 职场文书
2016年国陪研修感言
2015/11/18 职场文书
HTML中link标签属性的具体用法
2023/05/07 HTML / CSS