Pythonでコンピュータの情報を取得する方法について入門者向けにまとめました。
【情報取得】OS名、CPU・メモリの使用率、プロセス一覧
Python標準モジュール「platform」のplatform.system()で実行中プラットフォーム名を取得できます。
# -*- coding:utf-8 -*-
import platform
# システムの種類を取得
systype = platform.system()
# 取得した情報を表示
print(systype) # Windows
これを応用すれば、実行するプラットフォームによって、プログラムの処理を変えたりできます。
– | 関連記事 |
---|---|
1 | ■【Python】利用中のOS名を取得 |
Pythonモジュール「psutil」でCPUやメモリの利用情報を取得できます。
# -*- coding:utf-8 -*-
import psutil
# メモリとCPUの利用情報を取得
memory = psutil.virtual_memory()
cpu_percent = psutil.cpu_percent(interval=1)
print('メモリ使用率:', memory.percent) # メモリ使用率: 60.0
print('CPU使用率:', cpu_percent) # CPU使用率 2.4
– | 関連記事 |
---|---|
1 | ■【Python/psutil】CPUやメモリの使用率を取得 |
Python標準モジュール「subprocess」でWindowsタスクマネージャーのプロセスから、メモリの使用量を取得できます。
# -*- coding:utf-8 -*-
import subprocess
# タスクマネージャーのプロセルを取得
proc = subprocess.Popen('tasklist', shell=True, stdout=subprocess.PIPE)
# 1行ずつ表示
for line in proc.stdout:
print(line.decode('shift-jis'))
"""
イメージ名 PID セッション名 セッション# メモリ使用量
========================= ======== ================ =========== ============
System Idle Process 0 Services 0 8 K
System 4 Services 0 13,104 K
Registry 96 Services 0 22,876 K
smss.exe 360 Services 0 452 K
csrss.exe 512 Services 0 1,864 K
:
"""
– | 関連記事 |
---|---|
1 | ■【Python】Windowsタスクマネージャーのプロセスを表示 |
【計測】プログラムの処理時間
Pythonでは、標準モジュールtimeを使うことで時間を取得できます。
処理時間を計測するには、以下の計算を行います。
処理時間=(処理終了時間)-(処理開始時間)
time.time
time.time()を使った測定方法です。
ただし、この方法では1/60秒の精度しか出ないようです。
# -*- coding: utf-8
import time
def main():
# 開始時間
start = time.time()
# 計測する処理
i = 0
for i in range(100000):
i = i * 2
# 終了時間
end = time.time()
# 処理時間=終了時間-開始時間
print (end-start) # 0.03652310371398926[秒]
if __name__ == '__main__':
main()
time.perf_counter
time.perf_counter()を使った測定方法です。
こちらのほうが測定精度は高いようです。
# -*- coding: utf-8
import time
# 開始時間
start = time.perf_counter()
# 計測する処理
i = 0
for i in range(100000):
i = i * 2
# 終了時間
end = time.perf_counter()
# 処理時間=終了時間-開始時間
print (end-start) # 0.015586701192719541[秒]
– | 関連記事 |
---|---|
1 | ■【Python入門】サンプル集 |
2 | ■【Python】日時データの処理(datetime) |
コメント