簡介:psutil(程序和系統實用程式)是乙個跨平台庫,用於檢索python中執行程序和系統利用率(cpu、記憶體、磁碟、網路、感測器)的資訊。它主要用於系統監視、分析和限制程序資源以及管理正在執行的程序。它實現了經典unix命令列工具提供的許多功能,如ps、top、iotop、lsof、netstat、ifconfig、free等。
支援的平台:linux、windows、macos、freebsd, openbsd, netbsd、sun solaris、aix等平台。
安裝:pip install psutil
使用者系統資訊:
import psutil
import datetime
print("當前使用者:", psutil.users())
print("當前系統時間:", psutil.boot_time()) # 以時間戳格式返回)
print(datetime.datetime.fromtimestamp(psutil.boot_time()).strftime("%y-%m-%d %h: %m: %s")) # 轉換成自然時間格式
記憶體資訊:
mem = psutil.virtual_memory()
print("系統記憶體全部資訊:", mem)
mem_total = float(mem.total)
mem_used = float(mem.used)
mem_free = float(mem.free)
mem_percent = floatwww.cppcns.com(mem.percent)
print(f"系統總計記憶體:")
print(f"系統已經使用記憶體:")
print(f"系統空閒記憶體:")
print(f"系統記憶體使用率:")
cpu資訊:
print("cpu彙總資訊:", psu程式設計客棧til.cpu_times())
print("cpu邏輯個數:", psutil.cpu_count())
print("swap記憶體資訊:", psutil.swap_memory())
磁碟資訊:
print("獲取磁碟的完整資訊:", psutil.disk_partitions())
print("獲取分割槽表的引數:", psutil.disk_usage('/')) # 獲取/分割槽的狀態
print("獲取硬碟io總個數:", psutil.disk_io_counters())
print("獲取單個分割槽io個數:", psutil.disk_io_counters(perdisk=true)) # perdisk=true引數獲取單個分割槽io個數
網路資訊:
print("獲取網路總io資訊:", psutil.net_io_counters())
系統程序管理資訊:
print("檢視系統全部程序:", psutil.pids())
單個程序的詳細資訊:
pid_info = psutil.process(1200)
print(pid_info.name()) # 程序名
print(pid_info.exe()) # 程序的bin路徑
print(pid_info.status()) # 程序狀態
print(pid_info.create_time()) # 程序建立時間
print(pid_info.cpu_times()) # 程序的cpu時間資訊,包括user,system兩個cpu資訊
print(pid_info.memory_percent()) # 程序記憶體利用率
print(pid_info.memory_info()) # 程序記憶體rss,vms資訊
print(pid_info.io_counters()) # 程序的io資訊,包括讀寫io數字及引數
print(pid_info.num_threads()) # 程序開啟的執行緒數
原始碼:import psutil
import datetime
# 使用者,系統相關:
print("當前使用者:", psutil.usttkdhers())
print("當前系統時間:", psutil.boot_time()) # 以linux時間格式返回)
print(datetime.datetime.fromtimestamp(psutil.boot_time()).strftime("%y-%m-%d %h: %m: %s")) # 轉換成自然時間格式
# 記憶體相關:
mem = psutil.virtual_memory()
print("系統記憶體全部資訊:", mem)
mem_total = float(mem.total)
mem_used = float(mem.used)
mem_free = float(mem.free)
mem_percent = float(mem.percent)
print(f"系統總計記憶體:")
print(f"系統已經使用記憶體:")
print(f"系統空閒記憶體:")
print(f"系統記憶體使用率:")
# cpu相關:
print("cpu彙總資訊:", psutil.cpu_times())
print("cpu邏輯個數:", psutil.cpu_count())
print("swap記憶體資訊:", psutil.swap_memory())
# 磁碟相關:
print("獲取磁碟的完整資訊:", psutil.disk_partitions())
print("獲取分割槽表的引數:", psutil.disk_usage('/')) # 獲取/分割槽的狀態
print("獲取硬碟io總個數:", psutil.disk_io_counters())
print("獲取單個分割槽io個數:", psutil.disk_io_counters(perdisk=true)) # perdisk=true引數獲取單個分割槽io個數
# 網路相關:
print("獲取網路總io資訊:", psutil.net_io_counters())
# 系統程序管理:
print("檢視系統全部程序:", psutil.pids())
# 單個程序的詳細資訊:
piwww.cppcns.comd_info = psutil.process(1200)
print(pid_info.name()) # 程序名
print(pid_info.exe()) # 程序的bin路徑
print(pid_info.status()) # 程序狀態
print(pid_info.create_time()) # 程序建立時間
print # 程序的cpu時間資訊,包括user,system兩個cpu資訊
print(pid_info.memory_percent()) # 程序記憶體利用率
print(pid_info.memory_info()) # 程序記憶體rss,vms資訊
print(pid_info.io_counters()) # 程序的io資訊,包括讀寫io數字及引數
print(pid_info.num_threads()) # 程序開啟的執行緒數
執行結果:
Python模組學習 psutil模組
psutil模組 psutil模組能夠提供介面,用來獲取以下資源資訊 psutil模組實現了很多功能,包括以下工具所具有的 ps top dfkill free lsof netstat ifconfig nice iotop uptime ttywho taskset 由此可見,可以利用psuti...
python中系統資訊模組 psutil
獲得系統效能資訊 1 psutil.cpu times 獲得cpu資訊 2 psutil.vitual memory 獲得記憶體使用資訊 psutil.swap memory 獲得交換分割槽使用資訊 3 psutil.disk partitions 獲得磁碟的分割槽情況 psutil.disk us...
Python 中psutil 模組的安裝
第二步解壓 tar xzvf psutil 2.0.0.tar.gz cd psutil 2.0.0 第三步安裝 python setup.py build python setup.py install 注意 我們的環境中光有乙個python 還是不夠的,它會在第三步的時候報錯。說什麼缺少這個檔案...