Python中psutil模組使用彙總

2022-09-24 10:45:14 字數 3633 閱讀 8163

簡介: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 還是不夠的,它會在第三步的時候報錯。說什麼缺少這個檔案...