这是我目前拥有的从windows的“systeminfo”命令中提取处理器的代码。
我在找一种更像蟒蛇的方法来做这件事。
results是由“\r\n”分割的systeminfo行的列表
提前谢谢!
processor_index = [i for i, s in enumerate(result) if 'processor(s)' in s.lower()]
processor_number = ''.join(result[processor_index[0]]).split(':')[1].lstrip().strip(' ')[0]
print ('processors = '+ str(processor_number))
processors = ''
for i in range(1, int(processor_number)+1):
processors += str(result[int(processor_index[0])+i]).lstrip()+','
print (processors[:-1])
编辑:
感谢您的回复,非常有帮助:)
是否也有方法获得bios版本,因为这是我需要systeminfo命令的主要原因。
我正在对“systeminfo”命令的输出执行相同的操作以获取此BIOS版本。
最佳答案
安装各种适用于windows的goodies,包括win32。
>>> import win32api
>>> win32api.GetSystemInfo()
(9, 4096, 65536, 140737488289791, 15, 4, 8664, 65536, (6, 14857))
此文档:
Return Value
The return value is a tuple of 9 values, which corresponds to the Win32 SYSTEM_INFO structure. The element names are:
wProcessorArchitecture
dwPageSize
lpMinimumApplicationAddress
lpMaximumApplicationAddress
dwActiveProcessorMask
dwNumberOfProcessors
dwProcessorType
dwAllocationGranularity
(wProcessorLevel,wProcessorRevision)