如何在Python中检测Meego/Maemo平台?

Ole*_*rov 4 python cross-platform maemo pyside meego

我使用 python (PySide) 为 Maemo/Meego/Linux 平台开发跨平台应用程序。我使用一种解决方法来区分 Maemo 和 Linux 平台:

try:
    import PySide.QtMaemo5
    PLATFORM = 'maemo'
except ImportError:
    PLATFORM = 'desktop'
Run Code Online (Sandbox Code Playgroud)

有谁知道如何检测 Meego 平台或检测 Maemo 平台的更好方法?

sae*_*gnu 5

第一种方式:使用平台模块,对于 Maemo:

>>> import platform
>>> platform.machine()
'armv71'
>>> platform.node() ## This is Host Name, not a safe method
'Nokia N900'
Run Code Online (Sandbox Code Playgroud)

由于平台至少对 Maemo 没有帮助,我推荐第二种(也是更安全的)方法:使用 /etc/issue:

issue = open('/etc/issue').read().strip().lower()
if issue.startswith('maemo'):
  ....
Run Code Online (Sandbox Code Playgroud)