Virtualenv: 'site' não tem o atributo "getsitepackages"

Criado em 24 fev. 2012  ·  4Comentários  ·  Fonte: pypa/virtualenv

Qualquer virtualenv, com ou sem --system-site-packages , me dá:

% python -c 'import site; site.getsitepackages()'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
AttributeError: 'module' object has no attribute 'getsitepackages'

Comentários muito úteis

Sim, um dos aspectos mais feios da implementação do virtualenv é que ele precisa ter sua própria cópia do módulo do site, que é usado para todos os virtualenvs, independentemente da versão do Python com a qual eles são criados. E esta cópia é anterior à adição de site.getsitepackages() (adicionada pela primeira vez no Python 2.7, acredito).

Eu não teria objeção a uma solicitação pull adicionando essa função ao módulo de site do virtualenv, desde que a implementação seja uma que possa funcionar em todas as versões do Python suportadas pelo virtualenv (2.4 a 3.3a). Ou se isso for muito difícil devido à falta de APIs em outras áreas das versões anteriores do Python, talvez tenha definido condicionalmente dependendo de sys.version ou algo assim.

Todos 4 comentários

Sim, um dos aspectos mais feios da implementação do virtualenv é que ele precisa ter sua própria cópia do módulo do site, que é usado para todos os virtualenvs, independentemente da versão do Python com a qual eles são criados. E esta cópia é anterior à adição de site.getsitepackages() (adicionada pela primeira vez no Python 2.7, acredito).

Eu não teria objeção a uma solicitação pull adicionando essa função ao módulo de site do virtualenv, desde que a implementação seja uma que possa funcionar em todas as versões do Python suportadas pelo virtualenv (2.4 a 3.3a). Ou se isso for muito difícil devido à falta de APIs em outras áreas das versões anteriores do Python, talvez tenha definido condicionalmente dependendo de sys.version ou algo assim.

duplicata #355

fechando como dupe para #355, já que é mais genérico.

tem esse problema com o Python 3.6.5

>> python --version && python -c "import site; print(site.getsitepackages())"
Python 3.6.5
Traceback (most recent call last):
  File "<string>", line 1, in <module>
AttributeError: module 'site' has no attribute 'getsitepackages'

não duplicado de #355

Esta página foi útil?
0 / 5 - 0 avaliações