Я пытаюсь pip install
в MySQL-python
пакет, но я получаю ImportError
.
Jans-MacBook-Pro:~ jan$ /Library/Frameworks/Python.framework/Versions/3.3/bin/pip-3.3 install MySQL-python
Downloading/unpacking MySQL-python
Running setup.py egg_info for package MySQL-python
Traceback (most recent call last):
File "<string>", line 16, in <module>
File "/var/folders/lf/myf7bjr57_jg7_5c4014bh640000gn/T/pip-build/MySQL-python/setup.py", line 14, in <module>
from setup_posix import get_config
File "./setup_posix.py", line 2, in <module>
from ConfigParser import SafeConfigParser
ImportError: No module named 'ConfigParser'
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 16, in <module>
File "/var/folders/lf/myf7bjr57_jg7_5c4014bh640000gn/T/pip-build/MySQL-python/setup.py", line 14, in <module>
from setup_posix import get_config
File "./setup_posix.py", line 2, in <module>
from ConfigParser import SafeConfigParser
ImportError: No module named 'ConfigParser'
----------------------------------------
Command python setup.py egg_info failed with error code 1 in /var/folders/lf/myf7bjr57_jg7_5c4014bh640000gn/T/pip-build/MySQL-python
Storing complete log in /Users/jan/.pip/pip.log
Jans-MacBook-Pro:~ jan$
Любые идеи?
python
python-3.x
если __name__ Нет
источник
источник
echo $PATH
говорит?Ответы:
В Python 3
ConfigParser
был переименованconfigparser
для соответствия требованиям PEP 8. Похоже, что устанавливаемый вами пакет не поддерживает Python 3.источник
sudo python3 -m pip install mysql-connector
и теперь работает. Спасибо за подсказку @LongmangВместо этого вы можете использовать
mysqlclient
пакет в качестве замены для MySQL-Python. Это вилкаMySQL-python
с добавленной поддержкой Python 3.Мне просто повезло
в моем python3.4 virtualenv после
что явно относится к Ubuntu / Debian, но я просто хотел поделиться своим успехом :)
источник
libpython3.5-minimal
package (sudo apt-get install libpython3.5-minimal
).Вот код, который должен работать в Python 2.x и 3.x
Очевидно, вам понадобится
six
модуль, но практически невозможно написать модули, которые работают в обеих версиях без шести.источник
from six.moves import configparser
six.moves
том, чтобы «обеспечить согласованный интерфейс» для переименованных модулей; упаковка импорт сtry
/except
при использованииsix
побеждает точку. Просто используйтеfrom six.moves import configparser
. Не то, чтобы шесть здесь нужно; Вы можете заменитьfrom six.moves import configparser
наimport ConfigParser as configparser
в своемexcept
блоке и достичь того же результата без необходимостиsix
.six
только требование для Python 2.X, но не Python 3.X.six.moves
и собственное имя может использоваться непосредственно для Python 2.Затем попробуйте снова установить MYSQL-python. Это сработало для меня
источник
MySQL-python не поддерживается на python3, вместо этого вы можете использовать mysqlclient
Если вы
fedora/centos/Red Hat
устанавливаете следующий пакетyum install python3-devel
pip install mysqlclient
источник
Если вы используете CentOS, то вам нужно использовать
yum install python34-devel.x86_64
yum groupinstall -y 'development tools'
pip3 install mysql-connector
pip install mysqlclient
источник
Совместимость Python 2/3 для
configparser
может быть решена простоsix
библиотекойисточник
Делай
pip3 install PyMySQL
и потомpip3 install mysqlclient
. Работал для меняисточник
У меня была такая же проблема. Оказывается, мне нужно было установить python3 devel на мои centos. Во-первых, вам нужно найти пакет, совместимый с вашей системой.
Затем установите пакет как:
Затем установите mysqlclient из pip
источник
Я получил еще с ответом Валереса:
Я бы предложил связать файл, а не копировать его. Это сохранить для обновления. Я связал файл с
/usr/lib/python3/
каталогом.источник
Попробуйте это решение, которое отлично сработало для меня.
В основном это переустановка / обновление до последней версии mysql из brew , а затем установка
mysqlclient
илиMySQL-Python
изglobal pip3
вместоvirtualenv pip3
.Затем доступ к
virtualenv
и успешно установитьmysqlclient
илиMySQL-Python
.источник
как насчет проверки версии Python, которую вы используете в первую очередь.
источник
from six.moves import configparser
Я запускаю kali linux-Rolling и столкнулся с этой проблемой, когда попытался запустить cupp.py в терминале после обновления до python 3.6.0. После некоторых исследований и испытаний я обнаружил, что переход
ConfigParser
на работуconfigparser
работал на меня, но затем я столкнулся с другой проблемой.config = configparser.configparser() AttributeError: module 'configparser' has no attribute 'configparser'
После нескольких дополнительных исследований я понял, что для Python 3
ConfigParser
изменен на,configparser
но обратите внимание, что у него есть атрибутConfigParser()
.источник
Я получал ту же ошибку в Mac OS 10, Python 3.7.6 и Django 2.2.7. Я хочу использовать эту возможность, чтобы поделиться тем, что сработало для меня после опробования многочисленных решений.
меры
Установленный Connector / Python 8.0.20 для Mac OS по ссылке
Скопируйте текущие зависимости в файл needs.txt, деактивируйте текущий виртуальный env и удалите его с помощью;
создать файл, если он еще не создан с помощью;
touch requirements.txt
копировать зависимость в файл;
python -m pip3 freeze > requirements.txt
деактивировать и удалить текущий виртуальный env;
deactivate && rm -rf <virtual-env-name>
Создал другой виртуальный env и активировал его используя;
python -m venv <virtual-env-name> && source <virtual-env-name>/bin/activate
Установите предыдущие зависимости, используя;
python -m pip3 install -r requirements.txt
источник
Пожалуйста, чтобы увидеть, что
/usr/bin/python
указывает наесли он указывает на
python3 or higher
изменениеpython2.7
Это должно решить проблему.
Я получаю ошибку установки для всех пакетов Python. Решение и обсуждение Абе Карплюса подсказали мне, в чем может быть проблема. Затем я вспомнил, что вручную изменил значение
/usr/bin/python
сpython2.7
на на/usr/bin/python3.5
, что на самом деле вызывало проблему. Когда-то яreverted
такой же. Это было решено.источник
MySQL-python
- это излишне; используйте вместо этого версию библиотеки Python 3.Это сработало для меня
источник