В нем говорится, что здесь и Platform.dist (), и platform.linux_distribution были устарел в версии 3.5 и будут удаленный в версии 3.7 (текущая версия 3.6.5 с 3.7 в режиме предварительного просмотра). и я не могу найти способ найти / получить имя дистрибутива Linux в python3!
В любом случае? Заранее спасибо.






Я не искал это много, но если вам нужна информация о версии, простой способ, может быть, что platform.linux_distribution python все равно делал, это читать файлы
/etc/*-release
или же
/proc/version
и посмотрите, что вы можете от них получить. ^^ '
До тех пор, пока он не находится в критическом с точки зрения производительности участке кода.
Хорошего дня!
И, конечно, вы можете инкапсулировать его в свой собственный модуль platform.distribution, если хотите сохранить совместимость со старым кодом при обновлении до python 7.;) (Возможно, потребуется указать другое имя и выполнить поиск / замену файлов tho. )
Этот пакет pip решает эту проблему. [Не ограничивается проблемой python 3.7]
После небольшого поиска я нашел его здесь, и его можно установить с помощью pip install distro.
Тогда import distro вместо import platform.
import distro
print(distro.linux_distribution())
Выход:
('Ubuntu', '18.04', 'Bionic Beaver')
Я тестировал Python версий 3.4, 3.5, 3.6, 3.7, и он отлично работает.
Привет и добро пожаловать в StackOverflow! Пожалуйста, постарайтесь всегда включать небольшой пример кода или текстовый отрывок, если вы предоставляете внешние ссылки. В этом случае вы можете включить быструю демонстрацию того, как найденный вами модуль предоставляет желаемую информацию и как она выглядит.
Вы имеете в виду что-то подобное? import distro print(distro.linux_distribution()) ('Ubuntu', '18.04', 'Bionic Beaver')
Да, это хороший пример. Вы можете снова отредактировать свой вопрос и включить его для полноты.
Хорошо .. У меня есть время убить .. Если я не найду другого решения, я попробую это и отмечу ваш как правильный ответ. (Если работает)