首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >用Python获取 Windows 上的 CPU 插槽数、物理核数、逻辑处理器数

用Python获取 Windows 上的 CPU 插槽数、物理核数、逻辑处理器数

原创
作者头像
Windows技术交流
发布2025-08-25 16:18:35
发布2025-08-25 16:18:35
1310
举报
文章被收录于专栏:Windows技术交流Windows技术交流

用Python获取 Windows 上的 CPU 插槽数、物理核数、逻辑处理器数

代码语言:txt
复制
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
简洁版:获取 Windows 上的 CPU 插槽数、物理核数、逻辑处理器数
依赖:psutil(必须),wmi(可选,用于获取插槽数)
pip install psutil
可选:pip install wmi
"""
import ctypes
import psutil

# 可选:尝试用 wmi 获取插槽数(物理处理器数量)
try:
    import wmi
    sockets = len(wmi.WMI().Win32_Processor())
except Exception:
    sockets = None  # 未安装 wmi 或查询失败时显示 N/A

# 使用 kernel32 获取所有处理器组的活动逻辑处理器数
k32 = ctypes.windll.kernel32
k32.GetActiveProcessorCount.argtypes = (ctypes.c_uint,)
k32.GetActiveProcessorCount.restype = ctypes.c_uint
ALL_PROCESSOR_GROUPS = 0xFFFF

physical_cores = psutil.cpu_count(logical=False) or 0
logical_processors = k32.GetActiveProcessorCount(ALL_PROCESSOR_GROUPS)

print("物理CPU(插槽)数:", sockets if sockets is not None else "N/A (可安装 wmi 获取)")
print("物理核数:", physical_cores)
print("逻辑处理器数:", logical_processors)

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档