分享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在linux系统下获取系统内存使用情况的方法
May 11 Python
Python的Django中django-userena组件的简单使用教程
May 30 Python
Python之父谈Python的未来形式
Jul 01 Python
python获取命令行输入参数列表的实例代码
Jun 23 Python
python中的RSA加密与解密实例解析
Nov 18 Python
利用Python的turtle库绘制玫瑰教程
Nov 23 Python
pytorch梯度剪裁方式
Feb 04 Python
使用pymysql查询数据库,把结果保存为列表并获取指定元素下标实例
May 15 Python
python3+openCV 获取图片中文本区域的最小外接矩形实例
Jun 02 Python
python代码实现图书管理系统
Nov 30 Python
Django中使用Celery的方法步骤
Dec 07 Python
Python实现制作销售数据可视化看板详解
Nov 27 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
德生PL450的电路分析和低放电路的改进办法
2021/03/02 无线电
Laravel5.1 框架表单验证操作实例详解
2020/01/07 PHP
php并发加锁问题分析与设计代码实例讲解
2021/02/26 PHP
获取URL地址中的文件名和参数的javascript代码
2009/09/02 Javascript
基于jquery库的tab新形式使用
2012/11/16 Javascript
js实现右下角可关闭最小化div(可用于展示推荐内容)
2013/06/24 Javascript
jquery淡化版banner异步图片文字效果切换图片特效
2014/04/08 Javascript
基于javascript html5实现3D翻书特效
2016/03/14 Javascript
浅谈Node.js:理解stream
2016/12/08 Javascript
详解Vue2.0之去掉组件click事件的native修饰
2017/04/20 Javascript
微信小程序调用PHP后台接口 解析纯html文本
2017/06/13 Javascript
seajs中模块依赖的加载处理实例分析
2017/10/10 Javascript
node.js的exports、module.exports与ES6的export、export default深入详解
2017/10/26 Javascript
小程序rich-text组件如何改变内部img图片样式的方法
2019/05/22 Javascript
[01:17]辉夜杯战队访谈宣传片—EHOME
2015/12/25 DOTA
Python中threading模块join函数用法实例分析
2015/06/04 Python
Python中绑定与未绑定的类方法用法分析
2016/04/29 Python
机器学习python实战之决策树
2017/11/01 Python
一篇文章快速了解Python的GIL
2018/01/12 Python
基于Pandas读取csv文件Error的总结
2018/06/15 Python
python实现文件的备份流程详解
2019/06/18 Python
Python类和实例的属性机制原理详解
2020/03/21 Python
MyHeritage美国:家族史研究和DNA测试的领先服务
2019/05/27 全球购物
美国购买舞会礼服网站:Couture Candy
2019/12/29 全球购物
美国最大的烧烤架和户外生活用品专业零售商:Barbeques Galore
2021/01/09 全球购物
毕业生求职的求职信
2013/12/05 职场文书
会计电算化专业毕业生求职信范文
2013/12/10 职场文书
医学生毕业自我鉴定
2014/03/26 职场文书
行政求职信
2014/07/04 职场文书
土建施工员岗位职责
2014/07/16 职场文书
管理工程专业求职信
2014/08/10 职场文书
学校2014年度工作总结
2014/12/06 职场文书
Spring Boot两种全局配置和两种注解的操作方法
2021/06/29 Java/Android
Win7/8.1用户可以免费升级到Windows 11系统吗?
2021/11/21 数码科技
SpringBoot中获取profile的方法详解
2022/04/08 Java/Android
使用Mysql计算地址的经纬度距离和实时位置信息
2022/04/29 MySQL