我目前正在使用Windows 10,如果平台是Windows 10,则需要输入一些代码。因此,我检查了python文档并阅读了有关平台模块的内容。这就是文档所说的内容:
platform.win32_ver(release='', version='', csd='', ptype='')
: 从Windows注册表获取其他版本信息,并返回一个元组(版本,版本,csd,ptype),参考操作系统版本,版本号,CSD级别(服务包)和操作系统类型(多/单处理器)
当我在Windows 10机器上尝试相同的功能时,我得到了以下内容:
>>> platform.win32_ver()
('8', '6.2.9200', '', u'Multiprocessor Free')
但是,我期待发布时间为10而不是8。
所以,如果我在这里遗漏了什么,我知道吗?
此外,有人可以告诉我是否有其他方法来检测Windows平台是否是Windows 10?
答案 0 :(得分:5)
问题是python使用GetVersionEx来确定版本。
正如您可以阅读here,Microsoft不再支持此功能,并提供不同的API。
但是,您始终可以自己调用新API,或者在HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion中检查注册表值。
您还可以使用WMI获取Win32_OperatingSystem实例。
我还要注意,特定版本检查通常被认为是一种不好的做法。