最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python利用psutil獲取CPU與內存等硬件信息

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

psutil是Python的一個第三方庫,提供了各種強大的硬件信息查閱功能,是標準庫推薦的第三方庫。一般conda會自行攜帶這個模塊,如果未安裝,可直接pip

pip install psutil

CPU 相關

函數功能
cpu_count()CPU核心數/線程數
cpu_freq()CPU頻率
cpu_times()CPU時間
cpu_stats()CPU統計信息
cpu_percent()CPU使用率

以i9-13900H為例,是一個6大核8小核總計20線程的CPU,則其核心數和線程數為

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

cpu_times和cpu_percent功能類似,都是統計CPU的時間占用,前者主要統計CPU 的用戶/系統/空閑時間;后者則返回某個時間段內CPU的占用比例,可通過interval來調節(jié)統計的延時。二者均提供percpu參數,為True時,將返回每個線程的占用情況。

print(psutil.cpu_times())
# scputimes(user=217520.578125, system=74740.26562500186, idle=8452631.640624998, interrupt=3238.703125, dpc=2513.390625)
# 0.5秒內每個現成的資源利用占比
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]

通過cpu_stats函數可查看CPU 的統計信息,包括上下文切換、中斷、軟中斷,以及系統調用次數等等

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

內存相關

函數功能
virtual_memory()內存利用情況
swap_memory()交換內存

這兩個函數的返回值均有下面幾個屬性

  • total 總內存
  • used 已使用的內存
  • percent 內存使用率

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

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()) # 返回交換內存
# sswap(total=5100273664, used=11184832512, free=-6084558848, percent=219.3, sin=0, sout=0)

硬盤相關

函數說明
disk_partitions()返回分區(qū)情況
disk_usage()輸入盤符,返回磁盤占用情況
disk_io_counters()磁盤的讀寫信息
psutil.disk_usage("C:") # 查看C盤的讀寫情況,單位是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函數中,perdisk為True時,返回每個磁盤的讀寫信息,否則返回所有磁盤相加之后的信息,示例如下

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)}
'''

電源相關

函數返回值
sensors_temperatures()溫度
sensors_fans()風扇轉速
sensors_battery()電源狀態(tài)

其中CPU溫度和風扇轉速并不適用于Widows系統,故而下面只測試一下sensors_battery函數

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

其中percent表示電池電量剩余百分比;power_plugged為True,表示電源已連接。

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

相關文章

  • Python queue隊列原理與應用案例分析

    Python queue隊列原理與應用案例分析

    這篇文章主要介紹了Python queue隊列原理與應用,結合具體案例形式分析了Python queue隊列的原理、功能、實現方法與使用技巧,需要的朋友可以參考下
    2019-09-09
  • 如何使用pyinstaller打包32位的exe程序

    如何使用pyinstaller打包32位的exe程序

    這篇文章主要介紹了如何使用pyinstaller打包32位的exe程序,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-05-05
  • 一文帶你深入理解Flask中的Session和Cookies

    一文帶你深入理解Flask中的Session和Cookies

    Flask,作為一個靈活的微型 web 框架,提供了會話(Session)和 Cookies 管理的能力,本文將深入探討 Flask 中的會話和 Cookies 的概念、工作機制以及應用實例,希望對大家有所幫助
    2023-12-12
  • python3 打印輸出字典中特定的某個key的方法示例

    python3 打印輸出字典中特定的某個key的方法示例

    這篇文章主要介紹了python3 打印輸出字典中特定的某個key的方法,涉及Python字典的遍歷、判斷、輸出等相關操作技巧,需要的朋友可以參考下
    2019-07-07
  • 利用python實現漢諾塔游戲

    利用python實現漢諾塔游戲

    這篇文章主要為大家詳細介紹了利用python實現漢諾塔游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • Python 繪圖和可視化詳細介紹

    Python 繪圖和可視化詳細介紹

    這篇文章主要介紹了Python 繪圖和可視化詳細介紹的相關資料,需要的朋友可以參考下
    2017-02-02
  • Queue隊列中join()與task_done()的關系及說明

    Queue隊列中join()與task_done()的關系及說明

    這篇文章主要介紹了Queue隊列中join()與task_done()的關系及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 在Tensorflow中查看權重的實現

    在Tensorflow中查看權重的實現

    今天小編就為大家分享一篇在Tensorflow中查看權重的實現,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • Python代碼一鍵轉Jar包及Java調用Python新姿勢

    Python代碼一鍵轉Jar包及Java調用Python新姿勢

    這篇文章主要介紹了Python一鍵轉Jar包,Java調用Python新姿勢,本文通過截圖實例給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • Scrapy實現模擬登錄的示例代碼

    Scrapy實現模擬登錄的示例代碼

    這篇文章主要介紹了Scrapy實現模擬登錄的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-02-02

最新評論

扎赉特旗| 栖霞市| 淮滨县| 财经| 梨树县| 鱼台县| 荥经县| 萨迦县| 苗栗市| 岳普湖县| 建昌县| 保定市| 洛川县| 堆龙德庆县| 巴彦县| 五台县| 贵南县| 聊城市| 河北区| 海南省| 磴口县| 佛山市| 金湖县| 尼勒克县| 德昌县| 乌拉特后旗| 葵青区| 绥宁县| 巴彦淖尔市| 察雅县| 铜鼓县| 奎屯市| 双流县| 前郭尔| 宁乡县| 靖远县| 龙南县| 马关县| 绥芬河市| 巴青县| 平凉市|