【问题标题】:Is there a method to get a full windows build number in python?有没有一种方法可以在 python 中获取完整的 Windows 内部版本号?
【发布时间】:2021-09-08 08:11:29
【问题描述】:

我正在为 Windows 版本号苦苦挣扎,我想得到它的全尺寸,因此包含十进制,我只找到了这个代码:

version = sys.getwindowsversion()
print(version.build) 

输出是:

19043

但我需要获取内部版本号的完整长度:C,我该如何解决这个问题?

找到的解决方案:

import os
os.system('ver')

输出:

Microsoft Windows [Version 10.0.19043.1052]

大家

【问题讨论】:

  • 你的意思是'.'.join([str(x) for x in sys.getwindowsversion()])还是'.'.join([str(x) for x in sys.getwindowsversion() if x!=''])
  • 只要能用,我会试一试告诉你

标签: python windows operating-system


【解决方案1】:

您可以通过version.majorversion.minor 访问其余版本号

sys.getwindowsversion(major=10, minor=0, build=19041, platform=2, service_pack='')

你也可以使用

import platform
platform.version()
platfotm.platform()

输出看起来像:

'10.0.19041'
'Windows-10-10.0.19041-SP0'

编辑

它的另一种选择。从 python 运行 powershell 脚本并捕获输出。首先要做的是允许从外部运行 powershell 命令:Set-ExecutionPolicy RemoteSigned 在 PS 中运行,而不是使用如下代码:

import subprocess, sys

p = subprocess.Popen(["powershell.exe", 
              "Get-ItemProperty -Path c:\windows\system32\hal.dll.VersionInfo.FileVersion"], 
              stdout=sys.stdout)
p.communicate()

输出应该是这样的: 10.0.19041.964 (WinBuild.160101.0800)

【讨论】:

  • 很遗憾没有,'19041.etcetc'后面需要小数点
猜你喜欢
  • 1970-01-01
  • 2019-07-31
  • 2011-05-31
  • 2017-11-11
  • 1970-01-01
  • 2011-03-02
  • 1970-01-01
  • 1970-01-01
  • 2014-10-27
相关资源
最近更新 更多