|
- import platform
- import subprocess
- import fileinput
-
-
- def get_mac_cpu_speed():
- commond = 'system_profiler SPHardwareDataType | grep "Processor Speed" | cut -d ":" -f2'
- proc = subprocess.Popen([commond], shell=True, stdout=subprocess.PIPE)
- output = proc.communicate()[0]
- output = output.decode() # bytes 转str
- speed = output.lstrip().rstrip('\n')
- return speed
-
-
- def get_linux_cpu_speed():
- for line in fileinput.input('/proc/cpuinfo'):
- if 'MHz' in line:
- value = line.split(':')[1].strip()
- value = float(value)
- speed = round(value / 1024, 1)
- return "{speed} GHz".format(speed=speed)
-
-
- def get_windows_cpu_speed():
- import winreg
- key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, r"HARDWARE\DESCRIPTION\System\CentralProcessor\0")
- speed, type = winreg.QueryValueEx(key, "~MHz")
- speed = round(float(speed)/1024, 1)
- return "{speed} GHz".format(speed=speed)
-
-
- def get_cpu_speed():
- osname = platform.system() # 获取操作系统的名称
- speed = ''
- if osname == "Darwin":
- speed = get_mac_cpu_speed()
- if osname == "Linux":
- speed = get_linux_cpu_speed()
- if osname in ["Windows", "Win32"]:
- speed = get_windows_cpu_speed()
-
- return speed
-
- # print(get_cpu_speed())
-
- import psutil
- # CPU逻辑数量
- # print(psutil.cpu_count())
- # CPU物理核心
- # print(psutil.cpu_count(logical=False))
- # print(psutil.cpu_percent(interval=1, percpu=True))
- #
- # print(psutil.virtual_memory())
- # print(psutil.virtual_memory().percent)#获取内存使用率
- # print(psutil.swap_memory())
- # print(psutil.disk_partitions()) # 磁盘分区信息
- # print(psutil.disk_usage('/')) # 磁盘使用情况
- # print(psutil.disk_io_counters()) # 磁盘IO
-
-
- print(len(psutil.pids()))
-
|