我正在四处寻找解决问题的方法,我能找到的最好的方法是: 从sys导入平台 如果platform ==“ linux”或platform ==“ linux2”: #Linux elif platform ==“ darwin”: #OS X elif平台==“ win32”: #Windows ...
有人知道我如何区分Linux PC和android,因为android基于Linux。如果可能的话,我该如何区分Mac OS和iOS
答案 0 :(得分:1)
您可以看到我的github存储库https://github.com/sk3pp3r/PyOS并使用pyos.py脚本
import platform
plt = platform.system()
if plt == "Windows":
print("Your system is Windows")
# do x y z
elif plt == "Linux":
print("Your system is Linux")
# do x y z
elif plt == "Darwin":
print("Your system is MacOS")
# do x y z
else:
print("Unidentified system")
答案 1 :(得分:1)
如果您只想使用标准库,我建议您查看https://docs.python.org/3/library/sys.html#sys.platform。
示例:
import sys
if sys.platform.startswith('linux'):
# Linux specific procedures
elif sys.platform.startswith('darwin'):
# MacOs specific procedures
elif sys.platform.startswith('win32'):
# Windows specific procedures
答案 2 :(得分:0)
使用platform
模块:
import platform
print(platform.system())
print(platform.release())
print(platform.version())
请注意,在Mac上运行的系统将为platform.system()
返回'Darwin'
platform.platform()
将返回非常详细的数据,例如
'Linux-3.3.0-8.fc16.x86_64-x86_64-with-fedora-16-Verne'
答案 3 :(得分:0)
根据我的个人经验,os.uname()
一直是我的最爱。 uname
函数仅真正驻留在基于Linux的系统中。以类似于此方法的方法使用该函数是检测您是否正在运行Windows系统的好方法:
import os
try:
test = os.uname()
if test[0] == "Linux":
do something here.
execpt AttributeError:
print("Assuming windows!")
do some other stuff here.
我希望这会有所帮助!