Skip to content

[Python] 使用程式判斷電腦的作業系統、以及 CPU 的核心

在開發 Python 的專案時,常常會有需要判斷使用者目前的作業系統的時候——因為不同的作業系統,我們可能就得使用不同的方法來實做同樣的一個功能。

在我最近實做多執行緒的程式的時候,使用者有多少 CPU 的核心數也同樣重要,故一併紀錄在這裡。

測試使用者作業系統可以使用 platform 模組、計算 CPU 數量則可以使用 multiprocessing 當中的 cpu_count() 函式。


程式碼解說

查看作業系統其實相當容易:

# -*- coding: utf-8 -*-
import platform

print(platform.system())



Output:

Windows

可以簡單看出我的作業系統是 Windows。當然,如果今天使用的是 Linux 的作業系統,比方說在我 Windows 裡內建的 Linux 子系統裡 (WSL 系統的介紹以及安裝辦法可以參考我寫的這篇: 《Bash on Ubuntu on Windows —— 在 Windows 上的 Linux 子系統》)。

Output:

這次顯示出來的作業系統版本便是 Linux。

關於 platform 模組相關的說明可以參考官網的介紹: https://docs.python.org/3.6/library/platform.html

據我所知,返回的作業系統名稱應如下:

Linux:     Linux
Windows:   Windows
MacOS:     Darwin
JVM:       Java

那麼,我們又該怎麼統計 CPU 的核心數呢?

from multiprocessing import cpu_count
print(cpu_count())



Output:

8

可以看到,我的 CPU 總共有 8 核心。

Tags:

Leave a Reply