我正在阅读的这本书向我展示了在python3中的sys.platform,在windows上运行得很好,但是在Linux中,我总是返回"Linux2“,即使我的内核是Linux3。
在StackOverflow上搜索一下,我看到人们提到了platform.system和os.name。第一个命令会告诉您Linux/Windows,但不会告诉您版本是什么,而第二个命令会给出NT/Posix中的技术名称。
我有点困惑,经验丰富的python程序员使用哪种方法最准确、最受欢迎。可以获取"windows7“或Linux3吗?
非常感谢。ps。仍然是stackoverflow的新手,希望我的问题格式正确。
发布于 2014-12-02 18:38:22
查看这里的文档,它既解释了'linux2‘的原因,也解释了如何以向后兼容的方式处理它:
https://docs.python.org/2/library/sys.html
版本2.7.3中的变化:由于sys.platform ==‘linux2’有很多代码检查,并且在Linux2.x和3.x之间没有本质的变化,所以sys.platform总是被设置为'linux2',即使在Linux 3.x上也是如此。在Python 3.3和更高版本中,该值将始终设置为'linux',因此建议始终使用带...
https://stackoverflow.com/questions/10415942
复制相似问题