J'essaye pip install
le MySQL-python
paquet, mais j'obtiens un 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$
Des idées?
python
python-3.x
si __name__ est Aucun
la source
la source
echo $PATH
dit-on?Réponses:
En Python 3,
ConfigParser
a été renommé pourconfigparser
être conforme à PEP 8. Il semble que le package que vous installez ne prend pas en charge Python 3.la source
sudo python3 -m pip install mysql-connector
et maintenant ça marche. Merci pour l'indice @LongmangVous pouvez à la place utiliser le
mysqlclient
package comme remplacement de remplacement pour MySQL-python. C'est un fork deMySQL-python
avec un support supplémentaire pour Python 3.J'ai eu de la chance avec simplement
dans mon virtualenv python3.4 après
qui est évidemment spécifique à ubuntu / debian, mais je voulais juste partager mon succès :)
la source
libpython3.5-minimal
package (sudo apt-get install libpython3.5-minimal
).Voici un code qui devrait fonctionner à la fois dans Python 2.x et 3.x
Évidemment, vous aurez besoin du
six
module, mais il est presque impossible d'écrire des modules qui fonctionnent dans les deux versions sans six.la source
from six.moves import configparser
six.moves
est de «fournir une interface cohérente» aux modules renommés; encapsuler les importations avec untry
/except
lors de l'utilisationsix
défait le point. Utilisez simplementfrom six.moves import configparser
. Pas que six soient nécessaires ici; vous pouvez remplacerfrom six.moves import configparser
parimport ConfigParser as configparser
dans votreexcept
bloc et obtenir le même résultat sans avoir besoinsix
.six
uniquement une exigence pour Python 2.X, mais pas Python 3.X.six.moves
et le nom natif peut également être utilisé directement pour Python 2.Essayez ensuite de réinstaller MYSQL-python. Cela a fonctionné pour moi
la source
MySQL-python n'est pas pris en charge sur python3 au lieu de cela, vous pouvez utiliser mysqlclient
Si vous êtes sur l'
fedora/centos/Red Hat
installation du package suivantyum install python3-devel
pip install mysqlclient
la source
Si vous utilisez CentOS, vous devez utiliser
yum install python34-devel.x86_64
yum groupinstall -y 'development tools'
pip3 install mysql-connector
pip install mysqlclient
la source
La compatibilité de Python 2/3 pour
configparser
peut être résolue simplement par lasix
bibliothèquela source
Faites
pip3 install PyMySQL
et ensuitepip3 install mysqlclient
. Travaillé pour moila source
J'avais le même problème. Il s'avère que j'avais besoin d'installer python3 devel sur mes centos. Tout d'abord, vous devez rechercher le package compatible avec votre système.
Ensuite, installez le package en tant que:
Ensuite, installez mysqlclient à partir de pip
la source
Je suis allé plus loin avec la réponse de Valeres:
Je suggère de lier le fichier au lieu de le copier. C'est enregistrer pour mettre à jour. J'ai lié le fichier au
/usr/lib/python3/
répertoire.la source
Essayez cette solution qui a bien fonctionné pour moi.
Fondamentalement, il s'agit de réinstaller / mettre à niveau la dernière version de mysql à partir de brew , puis d'installer
mysqlclient
ou àMySQL-Python
partirglobal pip3
devirtualenv pip3
.Puis accéder à
virtualenv
et installer avec succèsmysqlclient
ouMySQL-Python
.la source
que diriez-vous de vérifier la version de Python que vous utilisez en premier.
la source
from six.moves import configparser
J'exécute kali linux-Rolling et je suis tombé sur ce problème, lorsque j'ai essayé d'exécuter cupp.py dans le terminal, après la mise à jour vers python 3.6.0. Après quelques recherches et j'ai trouvé essai que le changement
ConfigParser
deconfigparser
travaillé pour moi , mais je suis tombé sur une autre question.config = configparser.configparser() AttributeError: module 'configparser' has no attribute 'configparser'
Après un peu plus de recherches, j'ai réalisé que pour python 3
ConfigParser
est changé enconfigparser
mais notez qu'il a un attributConfigParser()
.la source
J'obtenais la même erreur sur Mac OS 10, Python 3.7.6 et Django 2.2.7. Je veux profiter de cette occasion pour partager ce qui a fonctionné pour moi après avoir essayé de nombreuses solutions.
Pas
Connecteur installé / Python 8.0.20 pour Mac OS à partir du lien
Copiez les dépendances actuelles dans le fichier requirements.txt, désactivez l'environnement virtuel actuel et supprimez-le à l'aide de;
créer le fichier s'il n'est pas déjà créé avec;
touch requirements.txt
copier la dépendance dans un fichier;
python -m pip3 freeze > requirements.txt
désactiver et supprimer l'environnement virtuel actuel;
deactivate && rm -rf <virtual-env-name>
Créé un autre env virtuel et activé en utilisant;
python -m venv <virtual-env-name> && source <virtual-env-name>/bin/activate
Installez les dépendances précédentes en utilisant;
python -m pip3 install -r requirements.txt
la source
Veuillez voir ce qui
/usr/bin/python
pointesi elle indique de
python3 or higher
passer àpython2.7
Cela devrait résoudre le problème.
J'obtenais une erreur d'installation pour tous les packages python. La solution et la discussion d'Abe Karplus m'ont donné une idée de ce qui pourrait être le problème. Ensuite, je me suis rappelé que j'avais modifié manuellement le
/usr/bin/python
depython2.7
à/usr/bin/python3.5
, ce qui était en fait à l'origine du problème. Une fois que je suisreverted
pareil. Cela a été résolu.la source
MySQL-python
est exagéré; utilisez plutôt la version Python 3 de la bibliothèque.Cela a fonctionné pour moi
la source