Saya mencoba untuk pip install
yang MySQL-python
paket, tapi saya mendapatkan 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$
Ada ide?
python
python-3.x
jika __name__ Tidak Ada
sumber
sumber
echo $PATH
dikatakan?Jawaban:
Dalam Python 3,
ConfigParser
telah diubah namanya menjadiconfigparser
untuk kepatuhan PEP 8. Sepertinya paket yang Anda instal tidak mendukung Python 3.sumber
sudo python3 -m pip install mysql-connector
dan sekarang sudah berfungsi. Terima kasih atas petunjuknya @LongmangAnda bisa menggunakan
mysqlclient
paket sebagai pengganti drop-in untuk MySQL-python. Ini adalah garpuMySQL-python
dengan dukungan tambahan untuk Python 3.Saya beruntung dengan sederhana
di virtualenv python3.4 saya setelah
yang jelas khusus untuk ubuntu / debian, tapi saya hanya ingin membagikan kesuksesan saya :)
sumber
libpython3.5-minimal
paket (sudo apt-get install libpython3.5-minimal
).Berikut ini adalah kode yang harus bekerja di Python 2.x dan 3.x
Jelas Anda akan membutuhkan
six
modul, tetapi hampir mustahil untuk menulis modul yang berfungsi di kedua versi tanpa enam.sumber
from six.moves import configparser
six.moves
adalah untuk "menyediakan antarmuka yang konsisten" untuk modul yang diganti namanya; membungkus impor dengantry
/except
ketika menggunakansix
mengalahkan poin. Gunakan sajafrom six.moves import configparser
. Bukan berarti enam dibutuhkan di sini; Anda dapat menggantifrom six.moves import configparser
denganimport ConfigParser as configparser
diexcept
blok Anda dan mencapai hasil yang sama tanpa perlusix
.six
hanya persyaratan untuk Python 2.X, tetapi tidak Python 3.X.six.moves
dan nama asli dapat digunakan langsung untuk Python 2 juga.Kemudian cobalah untuk menginstal MYSQL-python lagi. Itu berhasil bagi saya
sumber
MySQL-python tidak didukung di python3 selain ini Anda dapat menggunakan mysqlclient
Jika Anda
fedora/centos/Red Hat
menginstal paket berikutyum install python3-devel
pip install mysqlclient
sumber
Jika Anda menggunakan CentOS, maka Anda perlu menggunakannya
yum install python34-devel.x86_64
yum groupinstall -y 'development tools'
pip3 install mysql-connector
pip install mysqlclient
sumber
Kompatibilitas Python 2/3 untuk
configparser
dapat diselesaikan hanya dengansix
perpustakaansumber
Lakukan
pip3 install PyMySQL
dan kemudianpip3 install mysqlclient
. Bekerja untukkusumber
Saya mengalami masalah yang sama. Ternyata, saya perlu menginstal python3 devel pada centos saya. Pertama, Anda perlu mencari paket yang kompatibel dengan sistem Anda.
Kemudian, instal paket sebagai:
Kemudian, instal mysqlclient dari pip
sumber
Saya mendapat jawaban Valeres:
Saya akan menyarankan untuk menautkan file daripada menyalinnya. Simpan untuk memperbarui. Saya menautkan file ke
/usr/lib/python3/
direktori.sumber
Coba solusi ini yang bekerja dengan baik untuk saya.
Pada dasarnya itu untuk menginstal ulang / meningkatkan ke versi terbaru mysql dari buatan , dan kemudian menginstal
mysqlclient
atauMySQL-Python
dariglobal pip3
bukanvirtualenv pip3
.Kemudian mengakses
virtualenv
dan berhasil menginstalmysqlclient
atauMySQL-Python
.sumber
bagaimana dengan memeriksa versi Python yang Anda gunakan terlebih dahulu.
sumber
from six.moves import configparser
Saya menjalankan Kali linux- Rolling dan saya menemukan masalah ini, ketika saya mencoba menjalankan cupp.py di terminal, setelah memperbarui ke python 3.6.0. Setelah beberapa penelitian dan percobaan saya menemukan bahwa perubahan
ConfigParser
keconfigparser
bekerja untuk saya tapi kemudian saya datang di masalah lain.config = configparser.configparser() AttributeError: module 'configparser' has no attribute 'configparser'
Setelah sedikit penelitian lebih lanjut saya menyadari bahwa untuk python 3
ConfigParser
diubah menjadiconfigparser
tetapi perhatikan bahwa ia memiliki atributConfigParser()
.sumber
Saya mendapatkan kesalahan yang sama pada Mac OS 10, Python 3.7.6 & Django 2.2.7. Saya ingin menggunakan kesempatan ini untuk membagikan apa yang berhasil bagi saya setelah mencoba berbagai solusi.
Langkah
Connector Terpasang / Python 8.0.20 untuk Mac OS dari tautan
Salin dependensi saat ini ke file requirement.txt, nonaktifkan env virtual saat ini, dan hapus menggunakan;
buat file jika belum dibuat dengan;
touch requirements.txt
salin ketergantungan ke file;
python -m pip3 freeze > requirements.txt
menonaktifkan dan menghapus env virtual saat ini;
deactivate && rm -rf <virtual-env-name>
Membuat env virtual lain dan mengaktifkannya menggunakan;
python -m venv <virtual-env-name> && source <virtual-env-name>/bin/activate
Instal dependensi sebelumnya menggunakan;
python -m pip3 install -r requirements.txt
sumber
Mohon untuk melihat apa yang
/usr/bin/python
menunjukjika itu menunjuk untuk
python3 or higher
berubah menjadipython2.7
Ini harus menyelesaikan masalah.
Saya mendapatkan error instal untuk semua paket python. Solusi & diskusi Abe Karplus memberi saya petunjuk tentang apa yang bisa menjadi masalah. Kemudian saya teringat bahwa saya telah secara manual mengubah
/usr/bin/python
daripython2.7
ke/usr/bin/python3.5
, yang sebenarnya menyebabkan masalah. Begitu sayareverted
sama. Itu bisa dipecahkan.sumber
MySQL-python
banyak; gunakan versi Python 3 dari perpustakaan sebagai gantinya.Ini berhasil untuk saya
sumber