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

python psutil 模塊概述及使用示例

 更新時間:2024年11月01日 10:18:09   作者:XMYX-0  
psutil是一個跨平臺的Python庫,用于系統(tǒng)監(jiān)控、性能分析和進程管理,它提供了豐富的API,可用于獲取系統(tǒng)的CPU、內(nèi)存、磁盤、網(wǎng)絡(luò)等資源的使用情況,以及進行進程管理,psutil支持Linux、Windows、macOS等主流操作系統(tǒng)

psutil 模塊概述

psutil 是一個強大的跨平臺 Python 庫,主要用于系統(tǒng)監(jiān)控、性能分析和進程管理。它提供了類似 ps、toplsof 等命令的功能,支持獲取 CPU、內(nèi)存、磁盤、網(wǎng)絡(luò)等系統(tǒng)資源的使用情況。

支持的系統(tǒng)

psutil 支持大多數(shù)操作系統(tǒng),包括 Linux、Windows、macOS、FreeBSD 和 Solaris 等,可以獲取系統(tǒng)運行信息,如 CPU 使用率、內(nèi)存狀態(tài)、磁盤讀寫數(shù)據(jù)、網(wǎng)絡(luò)吞吐量等。

安裝 psutil

使用以下命令可以在任何系統(tǒng)中安裝 psutil

# 使用 pip 安裝
pip install psutil

使用示例

CPU 信息獲取

獲取 CPU 時間的使用情況:

import psutil
# 獲取詳細的 CPU 時間信息
cpu_times = psutil.cpu_times()
print("用戶模式時間:", cpu_times.user)
print("系統(tǒng)模式時間:", cpu_times.system)

計算 CPU 使用率(可以指定間隔時間):

cpu_percent = psutil.cpu_percent(interval=1)
print(f"當前 CPU 使用率:{cpu_percent}%")

內(nèi)存信息獲取

可以通過 virtual_memory() 方法來獲取內(nèi)存的總量、可用量及占用率。

mem = psutil.virtual_memory()
print(f"總內(nèi)存:{mem.total / (1024 ** 3):.2f} GB")
print(f"已用內(nèi)存:{mem.used / (1024 ** 3):.2f} GB")
print(f"剩余內(nèi)存:{mem.available / (1024 ** 3):.2f} GB")
print(f"內(nèi)存使用率:{mem.percent}%")

磁盤信息獲取

disk_partitions()disk_usage() 函數(shù)可以查看系統(tǒng)磁盤分區(qū)信息及分區(qū)使用情況:

# 獲取系統(tǒng)分區(qū)信息
partitions = psutil.disk_partitions()
for partition in partitions:
    usage = psutil.disk_usage(partition.mountpoint)
    print(f"分區(qū):{partition.device}")
    print(f"總?cè)萘浚簕usage.total / (1024 ** 3):.2f} GB")
    print(f"已用容量:{usage.used / (1024 ** 3):.2f} GB")
    print(f"剩余容量:{usage.free / (1024 ** 3):.2f} GB")
    print(f"使用率:{usage.percent}%")

網(wǎng)絡(luò)信息獲取

net_io_counters() 方法可獲取系統(tǒng)網(wǎng)絡(luò)的總流量,可以加上 pernic=True 參數(shù)獲取每個網(wǎng)卡的流量:

net_io = psutil.net_io_counters()
print(f"發(fā)送數(shù)據(jù):{net_io.bytes_sent / (1024 ** 2):.2f} MB")
print(f"接收數(shù)據(jù):{net_io.bytes_recv / (1024 ** 2):.2f} MB")

進程管理功能

psutil 提供了全面的進程管理功能,可以查看系統(tǒng)中所有進程 ID,獲取進程的相關(guān)信息,并控制進程的狀態(tài)。

查看系統(tǒng)進程

獲取系統(tǒng)所有進程 ID:

pids = psutil.pids()
print("系統(tǒng)中所有的進程 ID:", pids)

獲取進程詳情

以某個特定進程 ID(如 1234)為例,查看進程的詳細信息:

pid = 1234
process = psutil.Process(pid)
print("進程名稱:", process.name())
print("進程狀態(tài):", process.status())
print("進程使用的內(nèi)存:", process.memory_info().rss / (1024 ** 2), "MB")

示例腳本:監(jiān)控系統(tǒng)資源

以下是一個完整的腳本示例,用于獲取系統(tǒng)硬件信息,如 CPU 使用率、內(nèi)存和磁盤情況:

import psutil
import datetime
# 獲取系統(tǒng)啟動時間
boot_time = datetime.datetime.fromtimestamp(psutil.boot_time()).strftime("%Y-%m-%d %H:%M:%S")
print("系統(tǒng)啟動時間:", boot_time)
# CPU 使用率
print(f"CPU 使用率:{psutil.cpu_percent(interval=1)}%")
# 內(nèi)存信息
mem = psutil.virtual_memory()
print(f"內(nèi)存總量:{mem.total / (1024 ** 3):.2f} GB")
print(f"已用內(nèi)存:{mem.used / (1024 ** 3):.2f} GB")
print(f"剩余內(nèi)存:{mem.available / (1024 ** 3):.2f} GB")
# 磁盤使用信息
disk_usage = psutil.disk_usage('/')
print(f"磁盤總量:{disk_usage.total / (1024 ** 3):.2f} GB")
print(f"磁盤已用:{disk_usage.used / (1024 ** 3):.2f} GB")
print(f"磁盤剩余:{disk_usage.free / (1024 ** 3):.2f} GB")

以下是 psutil 模塊的總結(jié):

總結(jié)

psutil 模塊是一個強大且易于使用的 Python 庫,專為系統(tǒng)監(jiān)控、資源管理和進程控制設(shè)計。通過它可以跨平臺地獲取 CPU、內(nèi)存、磁盤、網(wǎng)絡(luò)等系統(tǒng)資源的實時信息,同時還能便捷地管理系統(tǒng)進程。

核心功能

  • CPU 管理:獲取 CPU 使用率、核心數(shù)、時間等信息。
  • 內(nèi)存管理:查看系統(tǒng)內(nèi)存的總量、可用量及使用情況。
  • 磁盤管理:查看磁盤分區(qū)、使用率及 I/O 情況。
  • 網(wǎng)絡(luò)管理:獲取網(wǎng)絡(luò)的發(fā)送、接收數(shù)據(jù)總量和連接信息。
  • 進程管理:支持列出系統(tǒng)進程,獲取進程狀態(tài)、資源使用情況等。

使用場景

psutil 廣泛應(yīng)用于性能監(jiān)控、系統(tǒng)日志記錄、數(shù)據(jù)分析工具、自動化運維等場景。它不僅幫助用戶快速搭建監(jiān)控腳本,還能用于調(diào)試和系統(tǒng)診斷,是開發(fā)者和運維人員的重要工具。

主要優(yōu)點

  • 跨平臺支持,兼容主流操作系統(tǒng)。
  • API 豐富,支持幾乎所有系統(tǒng)資源的獲取。
  • 簡單易用,函數(shù)調(diào)用直觀,文檔完善。

到此這篇關(guān)于python psutil 模塊概述的文章就介紹到這了,更多相關(guān)python psutil 模塊內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用python serial 獲取所有的串口名稱的實例

    使用python serial 獲取所有的串口名稱的實例

    今天小編就為大家分享一篇使用python serial 獲取所有的串口名稱的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Python兩個內(nèi)置函數(shù) locals 和globals(學習筆記)

    Python兩個內(nèi)置函數(shù) locals 和globals(學習筆記)

    這篇文章主要介紹了Python兩個內(nèi)置函數(shù) locals 和globals(學習筆記),需要的朋友可以參考下
    2016-08-08
  • Windows安裝Anaconda并且配置國內(nèi)鏡像的詳細教程

    Windows安裝Anaconda并且配置國內(nèi)鏡像的詳細教程

    我們在學習 Python 的時候需要不同的 Python 版本,關(guān)系到電腦環(huán)境變量配置換來換去很是麻煩,所以這個時候我們需要一個虛擬的 Python 環(huán)境變量,這篇文章主要介紹了Windows安裝Anaconda并且配置國內(nèi)鏡像教程,需要的朋友可以參考下
    2023-01-01
  • Window系統(tǒng)下Python如何安裝OpenCV庫

    Window系統(tǒng)下Python如何安裝OpenCV庫

    這篇文章主要介紹了Window系統(tǒng)下Python如何安裝OpenCV庫,本文分步驟給大家介紹的詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • Python之str操作方法(詳解)

    Python之str操作方法(詳解)

    下面小編就為大家?guī)硪黄狿ython之str操作方法(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • python如何實現(xiàn)異步調(diào)用函數(shù)執(zhí)行

    python如何實現(xiàn)異步調(diào)用函數(shù)執(zhí)行

    這篇文章主要介紹了python如何實現(xiàn)異步調(diào)用函數(shù)執(zhí)行,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-07-07
  • 從0到1使用python開發(fā)一個半自動答題小程序的實現(xiàn)

    從0到1使用python開發(fā)一個半自動答題小程序的實現(xiàn)

    這篇文章主要介紹了從0到1使用python開發(fā)一個半自動答題小程序的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-05-05
  • python opencv進行圖像拼接

    python opencv進行圖像拼接

    這篇文章主要為大家詳細介紹了python opencv進行圖像拼接,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • Django模板之基本的 for 循環(huán) 和 List內(nèi)容的顯示方式

    Django模板之基本的 for 循環(huán) 和 List內(nèi)容的顯示方式

    這篇文章主要介紹了Django模板之基本的 for 循環(huán) 和 List內(nèi)容的顯示方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • 人工智能—Python實現(xiàn)線性回歸

    人工智能—Python實現(xiàn)線性回歸

    這篇文章主要介紹了人工智能—Python實現(xiàn)線性回歸,人工智能分為類型、數(shù)據(jù)集、效果評估、等,線性回歸根據(jù)隨機初始化的?w?x?b?和?y?來計算?loss等步驟實現(xiàn),下面來看看文章的具體實現(xiàn)吧
    2022-01-01

最新評論

容城县| 徐水县| 岐山县| 许昌市| 石楼县| 清流县| 抚州市| 辽阳县| 阿图什市| 五台县| 澄城县| 巴青县| 称多县| 柞水县| 日喀则市| 姚安县| 芜湖县| 任丘市| 什邡市| 怀安县| 贵州省| 扎赉特旗| 绥江县| 香河县| 蓬莱市| 镇原县| 高密市| 万源市| 敦煌市| 柘荣县| 射洪县| 比如县| 房产| 松原市| 淮阳县| 韩城市| 长白| 安庆市| 宜丰县| 扶沟县| 安阳县|