Não é possível executar bibliotecas python devido a problemas de python 2/3

1

Estou executando uma nova instalação do Tumbleweed do OpenSUSE 13.2, que vem com python2.7 e python3.4. Eu estou continuamente tendo problemas para executar quaisquer libs baseadas em Python para obter o seguinte erro ImportError: No module named site . Todas as respostas para este problema lidam com a configuração do PYTHONPATH e / ou PYTHONHOME env vars para algum caminho, mas eu tentei todas as combinações de caminho que eu posso pensar e nada funciona. Idéias?

As bibliotecas com as quais estou tendo problemas são youtube-dl e flexget.

    
por chris 31.10.2015 / 07:54

1 resposta

2

  1. Este é o trabalho da sua distro, para obter o gerenciamento da biblioteca correto - até mesmo para coisas como python, que parecem sair do seu caminho para tornar isso difícil.

  2. Execute programas python 2 com programas #!/usr/bin/python2 e python 3 com #!/usr/bin/python3 . Ou chamando-os como python2 script ou python3 script . Não use #!/usr/bin/env python , isso foi um conselho moronicamente ruim mesmo antes de haver duas pythons.

  3. Use as versões empacotadas da distribuição de bibliotecas python sempre que possível. Mesmo se você tiver que esperar uma semana inteira pela versão 1.2.0.0.0.0.3 para ser empacotada enquanto estiver preso na antiga versão 1.2.0.0.0.0.2. Ou meses. É extremamente raro que uma biblioteca atualizada valha a pena correr o risco de estragar seu sistema. Indo sem, ou "usar outro lib" é quase sempre uma resposta melhor do que "bagunçar o meu sistema, instalando manualmente este lib"

  4. Se você precisar instalar manualmente uma biblioteca, adapte as instruções para adequá-las ao seu sistema . As instruções podem (principalmente) funcionar no próprio sistema do desenvolvedor, mas elas farão um número enorme de suposições sobre como as coisas são configuradas - e a maioria delas provavelmente estará errada para o seu sistema. Isso significa ler atentamente a documentação e anotações relevantes da distribuição e entender o ambiente python de seu sistema e como ele funciona.

  5. Não adaptar as instruções para se adequar ao seu sistema pode atrapalhar o ambiente do seu python, mesmo que sua distro tenha feito tudo certo no que diz respeito ao gerenciamento do python lib. Este é um resultado infelizmente comum para python (e ruby) de maneiras que não são comuns para qualquer outra linguagem de programação ou script. Há MUITOS conselhos ruins que essencialmente lhe dizem para ignorar a distribuição ou sistema operacional e tratá-la como um obstáculo a ser trabalhado (ao invés de uma ferramenta a ser usada e trabalhada) por aí no mundo python.

por 31.10.2015 / 08:42

Tags