Como corrigir “módulo 'plataforma' não tem atributo 'linux_distribution'” ao instalar novos pacotes com o Python3.8?

9

Eu tinha versões Python de 2.7 e 3.5. Eu queria instalar uma versão mais recente do Python, que é o python 3.8. Estou usando o Ubuntu 16.04 e não consigo apenas desinstalar o Python 3.5 devido às dependências. Então, para executar meus scripts, eu uso python3.8 app.py. Não há problema até agora. Mas quando eu quero instalar novos pacotes via pip:

python3.8 -m pip install pylint

Emite um erro:

AttributeError: module 'platform' has no attribute 'linux_distribution'

Até agora, tentei:

sudo update-alternatives --config python3

e escolheu python3.8 e execute o comando iniciando com python3, mas sem sorte.

Então:

sudo ln -sf /usr/bin/python3.5 /usr/bin/python3

Também tentei executar o comando iniciando com python3, mas também não funcionou.

Como posso corrigi-lo para instalar novos pacotes na minha nova versão do Python?

EmreAkkoc
fonte
2
Parece que pylintainda não está atualizado para oferecer suporte ao Python3.8.
Gino Mempin #
tentou travesseiro, scipy, pandas, selênio não deles. mas instalou o python 3.7 e está tudo bem. Obrigado.
EmreAkkoc
4
platform.linux_distributionfoi removido no Python 3.8. Veja: bugs.python.org/issue28167 , que parece afetar os scripts de instalação / instalação do pacote. Pode ser necessário relatar o problema aos respectivos pacotes (ou enviar um PR para corrigi-lo).
Gino Mempin
Você pode
usar o seguinte

Respostas:

5

Parece que pelo menos no meu Ubuntu 16.04, o pip é compartilhado para todas as versões do Python no /usr/lib/python3/dist-packages/pip.

Isto é o que eu fiz para fazê-lo funcionar novamente:

  • sudo apt remove python3-pip
  • sudo python3.8 -m easy_install pip

Você pode querer instalar a versão python 3.5 do pip novamente com sudo python3.5 -m easy_install pip.

Dave Halter
fonte
Funciona muito bem no ubuntu 16.04 + python3.8. Obrigado!
om2c0de 29/03
5

O Python 3.8 removeu algumas coisas. Resolvi meus problemas com o pip (especificamente instalação do pip) instalando o pip com curl

O que funcionou para mim foi: Fazendo o
cd ~/Downloads
download get-pip.py
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
e executando-o com o python 3.8:
python3.8 get-pip.py

Resolvi isso para mim.

Fonte: https://pip.pypa.io/en/stable/installing/

Gur Telem
fonte
0

Verifique se a instalação das rodas é antiga. Eu estava recebendo esse mesmo erro e o corrigi com

python3.8 -m pip install --upgrade pip setuptools wheel

Pylint parece funcionar em python3.8

Jack Thomson
fonte