我正在阅读的这本书sys.platform
在python3中显示我,在Windows上运行正常,但在Linux中,我继续回到"Linux2",即使我的内核是Linux3.
在StackOverflow上搜索我看到人们提到platform.system
和os.name
.第一个将告诉你Linux/Windows但不是什么版本,后者为你提供了NT/Posix中的技术名称.
我有点困惑,这是经验python编码器使用的最准确和首选的方法.是否有可能获得"windows7"或Linux3?
非常感谢.PS.仍然是stackoverflow的新手,希望正确地格式化我的问题.
Ole*_*pin 15
你不应该依赖这个数字,因为正如你所指出的那样,它是不一致的.它实际上显示了编译Python的系统上的主要内核版本.
此外,它已在Python 3.3中删除:
issue 12326:在Linux上,sys.platform不再包含主要版本.它现在总是'linux',而不是'linux2'或'linux3',具体取决于用于构建Python的Linux版本.如果您不需要支持较旧的Python版本,请替换
sys.platform == 'linux2'
为sys.platform.startswith('linux')
或直接替换sys.platform == 'linux'
.
- Python 3.3中的新功能 » 移植Python代码
也可以看看: sys.platform
因此,找出系统是否为Linux的首选方法是sys.platform.startswith('linux')
.它适用于所有版本的Python和Linux.
似乎没有办法在标准库中更精确地找出操作系统名称.
归档时间: |
|
查看次数: |
5496 次 |
最近记录: |