sys.platform可能的值?
以下命令可能的返回值是什么?
import sys print sys.platform
我知道有很多可能性,所以我主要对“主要”(Windows,Linux,Mac OS)感兴趣,
.---------------------.------------. | System | Value | |---------------------|------------| | Linux (2.x and 3.x) | linux2 (*) | | Windows | win32 | | Windows/Cygwin | cygwin | | Mac OS X | darwin | | OS/2 | os2 | | OS/2 EMX | os2emx | | RiscOS | riscos | | AtheOS | atheos | | FreeBSD 7 | freebsd7 | | FreeBSD 8 | freebsd8 | | FreeBSD N | freebsdN | '---------------------'------------'
(*)从python3.3开始,任何Linux的值始终是linux(没有版本号)。
Mac OS X(10.4,10.5,10.7,10.8):
darwin
Linux(2.6内核):
linux2
Windows XP 32位:
win32
括号内的版本已被检查 – 其他/新版本可能是相同的。
正如其他人所指出的,sys.platform来源于系统供应商提供系统的名称。 但是,Python也为sys.path添加了平台,因此您可以查看Python发行版中的所有平台目录。
这给你的名单
aix3 aix4 atheos beos5 darwin freebsd2 freebsd3 freebsd4 freebsd5 freebsd6 freebsd7 generic irix5 irix6 linux2 mac netbsd1 next3 os2emx riscos sunos5 unixware7
当然,当Python在没有创build平台特定目录的系统上编译时,sys.platform可以有额外的值。
从这里 。
FreeBSD 7.0: freebsd7
。 FreeBSD8,但构build执行以前的版本,相同的答案。
所以要注意,你得到的平台用于构build,而不是必需的,你正在运行。
截至2013年12月29日,OS X 10.9.1小牛仍被标记为达尔文。