从Python> 3.5开始,函数platform.linux_distribution()
被弃用:
https://docs.python.org/3.5/library/platform.html#platform.linux_distribution
有没有直接替代它的东西?
不幸的是,对于我来说,platform.uname()不会产生我需要的信息,因为我在docker容器中构建,这会返回主机的详细信息而不是图像。
特别是:我正在构建一个可移植的Linux发行版(https://www.python.org/dev/peps/pep-0513/),并希望在规范的CentOS 5.11发行版上进行测试。我正在寻找一种识别操作系统的简单方法,以便识别/标记构建结果。
答案 0 :(得分:6)
根据this,{@ 1}}将从Python 3.7开始弃用。我可以确认它确实存在于3.6中。该链接建议使用distro包作为替代方案。
安装软件包后,您可以
platform.linux_distribution()
答案 1 :(得分:0)
另一个选项是platform.uname()
:
>>> import platform
>>> platform.uname()
uname_result(system='Linux', node='lensman', release='4.19.84', version='#1-NixOS SMP Tue Nov 12 18:21:46 UTC 2019', machine='x86_64', processor='')