欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python利用psutil獲取CPU與內(nèi)存等硬件信息

 更新時(shí)間:2023年07月02日 15:21:55   作者:微小冷  
psutil是Python的一個(gè)第三方庫(kù),提供了各種強(qiáng)大的硬件信息查閱功能,這篇文章主要為大家介紹了如何利用psutil獲取CPU與內(nèi)存等硬件信息,需要的可以參考一下

psutil是Python的一個(gè)第三方庫(kù),提供了各種強(qiáng)大的硬件信息查閱功能,是標(biāo)準(zhǔn)庫(kù)推薦的第三方庫(kù)。一般conda會(huì)自行攜帶這個(gè)模塊,如果未安裝,可直接pip

pip install psutil

CPU 相關(guān)

函數(shù)功能
cpu_count()CPU核心數(shù)/線(xiàn)程數(shù)
cpu_freq()CPU頻率
cpu_times()CPU時(shí)間
cpu_stats()CPU統(tǒng)計(jì)信息
cpu_percent()CPU使用率

以i9-13900H為例,是一個(gè)6大核8小核總計(jì)20線(xiàn)程的CPU,則其核心數(shù)和線(xiàn)程數(shù)為

import psutil
print(psutil.cpu_count(logical=False))  # 返回核心數(shù)14
print(psutil.cpu_count())               # 進(jìn)程數(shù)20
print(psutil.cpu_freq())                # CPU頻率
# scpufreq(current=2600.0, min=0.0, max=2600.0)

cpu_times和cpu_percent功能類(lèi)似,都是統(tǒng)計(jì)CPU的時(shí)間占用,前者主要統(tǒng)計(jì)CPU 的用戶(hù)/系統(tǒng)/空閑時(shí)間;后者則返回某個(gè)時(shí)間段內(nèi)CPU的占用比例,可通過(guò)interval來(lái)調(diào)節(jié)統(tǒng)計(jì)的延時(shí)。二者均提供percpu參數(shù),為T(mén)rue時(shí),將返回每個(gè)線(xiàn)程的占用情況。

print(psutil.cpu_times())
# scputimes(user=217520.578125, system=74740.26562500186, idle=8452631.640624998, interrupt=3238.703125, dpc=2513.390625)
# 0.5秒內(nèi)每個(gè)現(xiàn)成的資源利用占比
print(psutil.cpu_percent(interval=0.5, percpu=True))
# [0.0, 0.0, 0.0, 0.0, 0.0, 2.9, 11.8, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 24.2, 0.0, 0.0, 0.0, 32.3, 0.0, 0.0]

通過(guò)cpu_stats函數(shù)可查看CPU 的統(tǒng)計(jì)信息,包括上下文切換、中斷、軟中斷,以及系統(tǒng)調(diào)用次數(shù)等等

print(psutil.cpu_stats())
# scpustats(ctx_switches=3751269358, interrupts=3638215162, soft_interrupts=0, syscalls=443301569)

內(nèi)存相關(guān)

函數(shù)功能
virtual_memory()內(nèi)存利用情況
swap_memory()交換內(nèi)存

這兩個(gè)函數(shù)的返回值均有下面幾個(gè)屬性

  • total 總內(nèi)存
  • used 已使用的內(nèi)存
  • percent 內(nèi)存使用率

此外,virtual_memory返回值中有available屬性,表示可用內(nèi)存,示例如下

vm = psutil.virtual_memory()
GB = 1024*1024*1024
print(vm.total/GB, "GB")
# 31.741661071777344 GB
print(vm.available/GB, "GB")
# 15.915771484375 GB
print(vm.percent, "%")
# 49.9 %
print(vm.used/GB, "GB")
# 15.825889587402344 GB
print(psutil.swap_memory()) # 返回交換內(nèi)存
# sswap(total=5100273664, used=11184832512, free=-6084558848, percent=219.3, sin=0, sout=0)

硬盤(pán)相關(guān)

函數(shù)說(shuō)明
disk_partitions()返回分區(qū)情況
disk_usage()輸入盤(pán)符,返回磁盤(pán)占用情況
disk_io_counters()磁盤(pán)的讀寫(xiě)信息
psutil.disk_usage("C:") # 查看C盤(pán)的讀寫(xiě)情況,單位是B
# sdiskusage(total=511282507776, used=307277705216, free=204004802560, percent=60.1)
parts = psutil.disk_partitions()
for p in parts: print(p)
'''
sdiskpart(device='C:\\', mountpoint='C:\\', fstype='NTFS', opts='rw,fixed', maxfile=255, maxpath=260)
sdiskpart(device='D:\\', mountpoint='D:\\', fstype='NTFS', opts='rw,fixed', maxfile=255, maxpath=260)
'''

disk_io_counters函數(shù)中,perdisk為T(mén)rue時(shí),返回每個(gè)磁盤(pán)的讀寫(xiě)信息,否則返回所有磁盤(pán)相加之后的信息,示例如下

print(psutil.disk_io_counters(perdisk=True))
'''
{'PhysicalDrive0': sdiskio(read_count=4063907, write_count=12341332, read_bytes=162591043584, write_bytes=235670665216, read_time=6212, write_time=10800), 'PhysicalDrive1': sdiskio(read_count=782479, write_count=332042, read_bytes=55565715968, write_bytes=9277476864, read_time=897, write_time=308)}
'''

電源相關(guān)

函數(shù)返回值
sensors_temperatures()溫度
sensors_fans()風(fēng)扇轉(zhuǎn)速
sensors_battery()電源狀態(tài)

其中CPU溫度和風(fēng)扇轉(zhuǎn)速并不適用于Widows系統(tǒng),故而下面只測(cè)試一下sensors_battery函數(shù)

>>> psutil.sensors_battery()
sbattery(percent=100, secsleft=<BatteryTime.POWER_TIME_UNLIMITED: -2>, power_plugged=True)

其中percent表示電池電量剩余百分比;power_plugged為T(mén)rue,表示電源已連接。

到此這篇關(guān)于Python利用psutil獲取CPU與內(nèi)存等硬件信息的文章就介紹到這了,更多相關(guān)Python psutil獲取硬件信息內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python?turtle編寫(xiě)簡(jiǎn)單的球類(lèi)小游戲

    Python?turtle編寫(xiě)簡(jiǎn)單的球類(lèi)小游戲

    turtle?(小海龜)?是?Python?內(nèi)置的一個(gè)繪圖模塊,其實(shí)它不僅可以用來(lái)繪圖,還可以制作簡(jiǎn)單的小游戲。本文將利用Turtle制作一個(gè)簡(jiǎn)單的球類(lèi)小游戲,感興趣的可以學(xué)習(xí)一下
    2022-03-03
  • numpy.ndarray 交換多維數(shù)組(矩陣)的行/列方法

    numpy.ndarray 交換多維數(shù)組(矩陣)的行/列方法

    今天小編就為大家分享一篇numpy.ndarray 交換多維數(shù)組(矩陣)的行/列方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08
  • python調(diào)用百度REST API實(shí)現(xiàn)語(yǔ)音識(shí)別

    python調(diào)用百度REST API實(shí)現(xiàn)語(yǔ)音識(shí)別

    這篇文章主要為大家詳細(xì)介紹了python調(diào)用百度REST API實(shí)現(xiàn)語(yǔ)音識(shí)別,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • OpenCV指紋識(shí)別實(shí)現(xiàn)代碼實(shí)例

    OpenCV指紋識(shí)別實(shí)現(xiàn)代碼實(shí)例

    使用OpenCV進(jìn)行指紋識(shí)別涵蓋特征提取與匹配,通過(guò)SIFT和FLANN實(shí)現(xiàn)匹配點(diǎn)計(jì)算,進(jìn)而識(shí)別指紋ID和姓名,盡管OpenCV具備強(qiáng)大的圖像處理功能,指紋識(shí)別依舊面臨挑戰(zhàn),需要的朋友可以參考下
    2024-10-10
  • python manim實(shí)現(xiàn)排序算法動(dòng)畫(huà)示例

    python manim實(shí)現(xiàn)排序算法動(dòng)畫(huà)示例

    這篇文章主要為大家介紹了python manim實(shí)現(xiàn)排序算法動(dòng)畫(huà)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • 基于Python制作一個(gè)匯率換算程序

    基于Python制作一個(gè)匯率換算程序

    這篇文章主要為大家詳細(xì)介紹了如何利用Python語(yǔ)言制作一個(gè)匯率換算程序,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定幫助,需要的可以參考一下
    2022-09-09
  • Python實(shí)現(xiàn)手寫(xiě)一個(gè)類(lèi)似django的web框架示例

    Python實(shí)現(xiàn)手寫(xiě)一個(gè)類(lèi)似django的web框架示例

    這篇文章主要介紹了Python實(shí)現(xiàn)手寫(xiě)一個(gè)類(lèi)似django的web框架,結(jié)合具體實(shí)例形式分析了Python自定義簡(jiǎn)單控制器、URL路由、視圖模型等功能,實(shí)現(xiàn)類(lèi)似Django框架的web應(yīng)用相關(guān)操作技巧,需要的朋友可以參考下
    2018-07-07
  • python 按照sheet合并多個(gè)Excel的示例代碼(多個(gè)sheet)

    python 按照sheet合并多個(gè)Excel的示例代碼(多個(gè)sheet)

    這篇文章主要介紹了python 按照sheet合并多個(gè)Excel的示例代碼(多個(gè)sheet),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • python http基本驗(yàn)證方法

    python http基本驗(yàn)證方法

    今天小編就為大家分享一篇python http基本驗(yàn)證方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • Tensorflow?2.1完成對(duì)MPG回歸預(yù)測(cè)詳解

    Tensorflow?2.1完成對(duì)MPG回歸預(yù)測(cè)詳解

    這篇文章主要為大家介紹了Tensorflow?2.1完成對(duì)MPG回歸預(yù)測(cè)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11

最新評(píng)論