繁体   English   中英

如何在 Python 中检查操作系统?

[英]How do I check the operating system in Python?

我想检查操作系统(在运行脚本的计算机上)。

我知道我可以在 Linux 中使用os.system('uname -o') ,但它在控制台中给了我一条消息,我想写入一个变量。

如果脚本可以判断它是 Mac、Windows 还是 Linux,那就没问题了。 我该如何检查?

您可以使用sys.platform

from sys import platform
if platform == "linux" or platform == "linux2":
    # linux
elif platform == "darwin":
    # OS X
elif platform == "win32":
    # Windows...

sys.platform粒度比sys.name更细。

有关有效值,请参阅文档

另请参阅“我在运行什么操作系统?”的答案

如果您想知道您在“Linux”、“Windows”或“Darwin”(Mac)之外的哪个平台上使用,但不那么精确,您应该使用:

>>> import platform
>>> platform.system()
'Linux'  # or 'Windows'/'Darwin'

platform.system函数在内部使用uname

您可以通过检查sys.platform对您正在使用的操作系统有一个非常粗略的了解。

获得该信息后,您可以使用它来确定调用os.uname()是否适合收集更具体的信息。 您还可以在类 Unix 操作系统上使用Python 系统信息,或在 Windows 上使用pywin32

如果您想在不想关心操作系统的情况下进行更深入的检查,也可以使用psutil

platform模块中提供了更多详细信息。

您可以使用sys.platform

关于Windows如何识别,似乎存在一些相互矛盾的信息。 一些消息来源称“Windows”,其他消息来源称“win32”。

考虑到这一点...

from sys import platform

if "win" in platform.lower():
    print platform

win32

但在Cygwin中可能也是如此。 但你可以随时添加一张支票,以确保“cy”不在那里。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM