确定是否在Ubuntu Linux中运行python

我有一个像这样运行的Python 3.2程序:

import platform sysname = platform.system() sysver = platform.release() print(sysname+" "+sysver) 

并在窗口上返回:

Windows 7的

但在Ubuntu和其他人返回:
Linux 3.0.0-13-generic

我需要像这样的东西:

Ubuntu 11.10或Mint 12

尝试platform.dist

 >>> platform.dist() ('Ubuntu', '11.10', 'oneiric') 

目前接受的答案使用不推荐的功能。 Python 2.6及更高版本的正确方法是:

 import platform print(platform.linux_distribution()) 

文档没有说如果这个功能在非Linux平台上可用,但是在我的本地Windows桌面上,我得到:

 >>> import platform >>> print(platform.linux_distribution()) ('', '', '') 

还有,在Win32机器上做类似的事情:

 >>> print(platform.win32_ver()) ('post2008server', '6.1.7601', 'SP1', 'Multiprocessor Free') 

或者,你可以这样做:

 import sys sys.platform 

它会返回:'linux2',或者你可以实现try..finally代码块。

 is_ubuntu = 'ubuntu' in os.getenv('DESKTOP_SESSION', 'unknown') 

如果你是在Unity或Unity-2D中运行的话,请点选。