分享3個(gè)非常實(shí)用的?Python?模塊
一、Psutil
Python
當(dāng)中的Psutil
模塊是個(gè)跨平臺(tái)庫(kù),它能夠輕松獲取系統(tǒng)運(yùn)行的進(jìn)程和系統(tǒng)利用率,包括CPU、內(nèi)存、磁盤、網(wǎng)絡(luò)等信息,它的安裝也非常的簡(jiǎn)單,
命令行:
pip install psutil
這里因?yàn)檎w的篇幅有限,小編就暫時(shí)只羅列幾個(gè)常用的方法,例如我們想要查看一下CPU
的利用率
psutil.cpu_percent()
返回的結(jié)果表示的是當(dāng)前系統(tǒng)范圍的CPU利用率百分比,如果我們要查看系統(tǒng)中CPU的個(gè)數(shù),
代碼如下:
## 邏輯CPU的個(gè)數(shù) psutil.cpu_count() ## 物理CPU的個(gè)數(shù) psutil.cpu_count(logical=False)
又或者我們想要查看一下系統(tǒng)中的物理內(nèi)存,代碼如下:
## 剩余的物理內(nèi)存 free = str(round(psutil.virtual_memory().free / (1024.0 * 1024.0 * 1024.0), 2)) ## 物理內(nèi)存總共有 total = str(round(psutil.virtual_memory().total / (1024.0 * 1024.0 * 1024.0), 2))
而如果我們想要查看單個(gè)磁盤的信息,就直接調(diào)用disk_usage()
方法
print(psutil.disk_usage('C:\\'))
而去獲取所有磁盤的信息,調(diào)用的則是disk_partitions()
方法
print(psutil.disk_partitions())
另外我們也還能夠獲取到系統(tǒng)的啟動(dòng)時(shí)間
from datetime import datetime print(u"系統(tǒng)啟動(dòng)時(shí)間: %s" % datetime.fromtimestamp(psutil.boot_time()).strftime("%Y-%m-%d %H:%M:%S"))
二、Pendulum
一般我們都是用datatime
模塊來(lái)處理日期、時(shí)間等數(shù)據(jù),但是不得不說(shuō)在于datatime
模塊也有自身的一些限制,例如在處理時(shí)區(qū)時(shí)就會(huì)顯得有些不足,這次我們來(lái)介紹一下Pendulum
模塊
首先我們用pip命令行來(lái)進(jìn)行安裝:
pip install pendulum
pendulum
模塊最令人印象深刻的功能是時(shí)區(qū),例如我們想要知道“巴黎”此時(shí)的時(shí)間,可以這么來(lái)做
now_in_paris = pendulum.now('Europe/Paris') print(now_in_paris)
output:
2022-01-22T14:59:06.484816+01:00
還可以知道當(dāng)天的日期:
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 # 明天
我們還可以在時(shí)間的數(shù)據(jù)上進(jìn)行加、減,調(diào)用的是add
和subtract
方法
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
要是我們希望將時(shí)間數(shù)據(jù)轉(zhuǎn)換成字符串,就可以這么來(lái)做,代碼如下:
dt = pendulum.datetime(2022, 1, 23, 15, 16, 10)
要是我們需要的是前綴的日期字符串,則可以這么來(lái)做
dt.to_date_string()
output:
2022-01-23
而要是我們需要的是后綴的時(shí)間字符串,則可以這么來(lái)做
dt.to_time_string()
output:
15:16:10
當(dāng)然我們有時(shí)候日期和時(shí)間都需要,代碼如下:
dt.to_datetime_string()
output:
2022-01-23 15:16:10
或者是:
dt.to_day_datetime_string()
output:
Sun, Jan 23, 2022 3:16 PM
當(dāng)然該模塊還有其他很多強(qiáng)大的功能,具體的大家可以去看它的文檔,最后我們要說(shuō)的是其人性化時(shí)間的輸出功能。
如果我們平時(shí)用搜素引擎的話,就會(huì)看到有很多內(nèi)容的時(shí)間被標(biāo)成了“1天前”、“1周后”等等,這個(gè)在pendulum
模塊當(dāng)中也能夠輕而易舉的實(shí)現(xiàn)
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
是一個(gè)專門用來(lái)生成藝術(shù)字的模塊,并且支持有多種藝術(shù)字的字體,
我們來(lái)看一下下面這個(gè)例子:
result = pyfiglet.figlet_format("Python", font="larry3d") print(result)
output:
____ __ __
/\ _`\ /\ \__/\ \
\ \ \L\ \__ __\ \ ,_\ \ \___ ___ ___
\ \ ,__/\ \/\ \\ \ \/\ \ _ `\ / __`\ /' _ `\
\ \ \/\ \ \_\ \\ \ \_\ \ \ \ \/\ \L\ \/\ \/\ \
\ \_\ \/`____ \\ \__\\ \_\ \_\ \____/\ \_\ \_\
\/_/ `/___/> \\/__/ \/_/\/_/\/___/ \/_/\/_/
/\___/
\/__/
要是大家不喜歡上面的字體,可以通過(guò)下面的代碼
pyfiglet.FigletFont.getFonts()
在輸出的所有字體當(dāng)中任選一個(gè)來(lái)進(jìn)行藝術(shù)字的塑造
到此這篇關(guān)于分享3個(gè)非常實(shí)用的 Python 模塊的文章就介紹到這了,更多相關(guān) Python 模塊內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
通過(guò)PYTHON來(lái)實(shí)現(xiàn)圖像分割詳解
這篇文章主要介紹了通過(guò)PYTHON來(lái)實(shí)現(xiàn)圖像分割詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,,需要的朋友可以參考下2019-06-06python調(diào)用動(dòng)態(tài)鏈接庫(kù)的基本過(guò)程詳解
這篇文章主要介紹了python調(diào)用動(dòng)態(tài)鏈接庫(kù)的基本過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06VSCode中Python環(huán)境配置、創(chuàng)建虛擬環(huán)境及pip的一些常用命令
這篇文章主要給大家介紹了關(guān)于VSCode中Python環(huán)境配置、創(chuàng)建虛擬環(huán)境及pip的一些常用命令,Python環(huán)境的創(chuàng)建是在VSCode中很常見(jiàn)的一個(gè)需求,特別是當(dāng)我們需要開(kāi)發(fā)或者調(diào)試多個(gè)Python項(xiàng)目時(shí),使用虛擬環(huán)境是一種好的方式,需要的朋友可以參考下2023-10-10python實(shí)現(xiàn)圖片轉(zhuǎn)字符畫(huà)的完整代碼
這篇文章主要給大家介紹了關(guān)于python實(shí)現(xiàn)圖片轉(zhuǎn)字符畫(huà)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02Python畫(huà)圖小案例之小雪人超詳細(xì)源碼注釋
在看了很多Python教程之后,覺(jué)得是時(shí)候做點(diǎn)什么小項(xiàng)目來(lái)練練手了,于是想來(lái)想去,用python寫了一個(gè)小雪人,代碼注釋無(wú)比詳細(xì)清楚,快來(lái)看看吧2021-09-09Django REST framework 分頁(yè)的實(shí)現(xiàn)代碼
這篇文章主要介紹了Django REST framework 分頁(yè)的實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06django 自定義過(guò)濾器(filter)處理較為復(fù)雜的變量方法
今天小編就為大家分享一篇django 自定義過(guò)濾器(filter)處理較為復(fù)雜的變量方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-08-08