[python] Python 3 ImportError : ‘ConfigParser’라는 모듈이 없습니다.

나는에 노력하고 패키지,하지만 난을 얻을 .pip installMySQL-pythonImportError

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 3에서는 PEP 8 준수 ConfigParserconfigparser위해 이름이 변경되었습니다 . 설치하는 패키지가 Python 3을 지원하지 않는 것 같습니다.


답변

대신 mysqlclient패키지를 MySQL-python의 드롭 인 대체품으로 사용할 수 있습니다 . MySQL-python파이썬 3을 추가로 지원 하는 포크입니다 .

나는 단순히 운이 좋았다

pip install mysqlclient

내 python3.4 virtualenv에서

sudo apt-get install python3-dev libmysqlclient-dev

우분투 / 데비안에만 해당되는 것이지만, 나는 단지 내 성공을 공유하고 싶었습니다 🙂


답변

다음은 Python 2.x 및 3.x에서 작동해야하는 코드입니다.

분명히 six모듈 이 필요 하지만 6 가지 버전이없는 두 버전 모두에서 작동하는 모듈을 작성하는 것은 거의 불가능합니다.

try:
    import configparser
except:
    from six.moves import configparser


답변

pip install configparser
sudo cp /usr/lib/python3.6/configparser.py /usr/lib/python3.6/ConfigParser.py

그런 다음 MYSQL-python을 다시 설치하십시오. 그것은 나를 위해 일했다


답변

MySQL-python은 python3에서 지원되지 않으며 대신 mysqlclient 를 사용할 수 있습니다

fedora/centos/Red Hat다음 패키지 를 설치하는 경우

  1. yum install python3-devel
  2. pip install mysqlclient

답변

CentOS를 사용하는 경우 다음을 사용해야합니다.

  1. yum install python34-devel.x86_64
  2. yum groupinstall -y 'development tools'
  3. pip3 install mysql-connector
  4. pip install mysqlclient

답변

라이브러리 configparser를 통해 Python 2/3의 호환성을 간단히 해결할 수 있습니다.six

from six.moves import configparser