Модуль устанавливается только в Python 2, и я не могу получить к нему доступ из Python 3

Модуль устанавливается только в Python 2, и я не могу получить к нему доступ из Python 3

Я пытаюсь установить wxPython на macOS, и у меня параллельно установлены Python 2.7 и Python 3.

Я написал программу wxPython Hello World в обеих версиях. Она работает в Python 2, но в Python 3 я получаю это сообщение об ошибке:

ModuleNotFoundError: Отсутствует модуль с именем «wx».

Похоже, wxPython был установлен только в Python 2.7, а Python 3 не может его найти. Как сделать его доступным из обеих версий?

решение1

У меня была та же проблема. Я переустановил python 3.7, затем установил wxPython. Быстрая перезагрузка (не уверен, была ли она вообще нужна) и теперь все работает.

решение2

Theофициальная инструкция по установке wxPythonсказать

Windows и macOS

pip install -U wxPython

Если вы используете Windows или macOS с совместимой сборкой Python, то команда, показанная выше, загрузит соответствующий файл wheel из последней версии иустановите его в вашей активной среде Pythonили виртуальная среда.

Как следует из формулировки, эта команда устанавливает только wxPythonверсию Python по умолчанию. (В данном случае это, похоже, Python 2.)

Так же, как команда pythonявляется псевдонимом для python2или python3, команда pipявляется псевдонимом для pip2или pip3. Если вы хотите убедиться, что устанавливаете модуль для обеих версий Python, вам следует выполнить обе команды:

pip2 install -U wxPython
pip3 install -U wxPython

Однако это решениене рекомендуетсяпотому что это не работает со всеми версиями python. Вместо этого,рекомендуетсядля использования python -m pipс предпочитаемой вами версией Python:

python2 -m pip install -U wxPython
python3 -m pip install -U wxPython

Смотрите также:Имеете дело с несколькими версиями Python и PIP?

Связанный контент