分享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 相关文章推荐
vc6编写python扩展的方法分享
Jan 17 Python
python读取oracle函数返回值
Jul 18 Python
python面向对象入门教程之从代码复用开始(一)
Dec 11 Python
Python编程在flask中模拟进行Restful的CRUD操作
Dec 28 Python
python实现石头剪刀布程序
Jan 20 Python
python中的句柄操作的方法示例
Jun 20 Python
anaconda如何查看并管理python环境
Jul 05 Python
在python中利用try..except来代替if..else的用法
Dec 19 Python
python单元测试框架pytest的使用示例
Oct 07 Python
python中watchdog文件监控与检测上传功能
Oct 30 Python
Python爬取网站图片并保存的实现示例
Feb 26 Python
超级详细实用的pycharm常用快捷键
May 12 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
一个ORACLE分页程序,挺实用的.
2006/10/09 PHP
php 变量未定义等错误的解决方法
2011/01/12 PHP
php遍历数组的4种方法总结
2014/07/05 PHP
PHP中遇到的时区问题解决方法
2015/07/23 PHP
CCPry JS类库 代码
2009/10/30 Javascript
jQuery-ui中自动完成实现方法
2010/06/10 Javascript
基于jQuery实现的图片切换焦点图整理
2014/12/07 Javascript
js实现div模拟模态对话框展现URL内容
2016/05/27 Javascript
JavaScript 节流函数 Throttle 详解
2016/07/04 Javascript
原生js仿jquery一些常用方法(必看篇)
2016/09/20 Javascript
Bootstrap进度条与AJAX后端数据传递结合使用实例详解
2017/04/23 Javascript
小程序server请求微信服务器超时的解决方法
2019/05/21 Javascript
JavaScript模块管理的简单实现方式详解
2019/06/15 Javascript
jquery实现下载图片功能
2019/07/18 jQuery
从Node.js事件触发器到Vue自定义事件的深入讲解
2020/06/26 Javascript
[55:03]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第二场 11.20
2020/11/20 DOTA
Python中删除文件的程序代码
2011/03/13 Python
Python装饰器基础详解
2016/03/09 Python
关于Django ForeignKey 反向查询中filter和_set的效率对比详解
2018/12/15 Python
python占位符输入方式实例
2019/05/27 Python
django 通过URL访问上传的文件方法
2019/07/28 Python
对django2.0 关联表的必填on_delete参数的含义解析
2019/08/09 Python
python圣诞树编写实例详解
2020/02/13 Python
利用python汇总统计多张Excel
2020/09/22 Python
用Python制作音乐海报
2021/01/26 Python
小学生自我评价范例
2013/09/24 职场文书
医学生自我鉴定范文
2013/11/08 职场文书
社区党员先进事迹
2014/01/22 职场文书
《秋游》教学反思
2014/04/24 职场文书
不错的求职信范文
2014/07/20 职场文书
品牌推广活动策划方案
2014/08/19 职场文书
个人委托书如何写
2014/09/25 职场文书
教代会闭幕词
2015/01/28 职场文书
开平碉楼导游词
2015/02/06 职场文书
2019年市场部个人述职报告(三篇)
2019/10/23 职场文书
《吸血鬼幸存者》新内容发布 追加多个全新模式
2022/04/07 其他游戏