我有Python应用程序,我想向用户展示他们操作系统的名称。我知道目前的操作系统可以从以下几个方面获得:
import platform
print(platform.platform())但是这个名字很长。是否有任何标准的方法只提取操作系统和版本的名称(或者linux时的发行版和版本的名称)?而不是这样:
Linux-4.15.0-111-generic-x86_64-with-Ubuntu-18.04-bionic
Windows-10-10.0.17763-SP0我想这样做:
Ubuntu 18.04
Windows 10或者我必须手动完成,例如使用regex?有问题,因为我不知道macOS、Fedora或其他操作系统上的输出是什么。
发布于 2020-07-20 06:51:32
您在这里使用了错误的工具:platform.platform()的目的是返回人类可读的名称,而不是可解析的名称。从医生那里:
返回一个字符串,以尽可能多的有用信息标识底层平台。
输出的目的是人类可读的,而不是机器可解析。它可能在不同的平台上看起来不同,这是有意的。
如果您想要OS类型及其版本,最好使用platform模块中的其他函数。通常情况下:system、release和version返回单个组件,而uname返回包含六个属性的命名元组:系统、节点、发布、版本、机器和处理器。
https://stackoverflow.com/questions/62989748
复制相似问题