pip tidak lagi berfungsi setelah pembaruan kesalahan 'modul' objek tidak dapat dipanggil

70

Setelah pembaruan pip, pip telah berhenti berfungsi sepenuhnya.

Z:\>pip install matplotlib
Traceback (most recent call last):
  File "c:\program files\python37\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "c:\program files\python37\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Program Files\Python37\Scripts\pip.exe\__main__.py", line 9, in <module>
TypeError: 'module' object is not callable

Tolong ada bantuan?

Sunting: Saya bekerja di windows 10

Agustin
sumber
13
Bisakah Anda mencoba python -m pip install matplotlibdan melaporkan kembali kesalahannya?
Han solo
10
Biasakan menggunakanpython -m pip
han solo
3
Tampaknya ada masalah mengenai 19.3 ini tidak berfungsi setelah meningkatkan dari 19.2.3
han solo
1
@AnnevanRossum Running python -m pippastikan bahwa pipdipanggil selalu dikaitkan dengan pythonAnda menjalankan
han solo
2
@hansolo Pasti ada hal lain yang terjadi juga. Pada sistem saya pipgagal, sementara python -m pipberhasil. Ini adalah sistem multi-python (dan pip3berhasil juga python3 -m pip). Saya bertanya-tanya apakah pipdigunakan apa adanya, menggunakan yang berbeda PYTHONPATHatau melakukan sesuatu yang berbeda.
Anne van Rossum

Jawaban:

81

Semua kredit untuk ini diberikan kepada pengguna han_solo , yang meninggalkan jawaban sebagai komentar, alih-alih sebagai jawaban:

Dari pada pip install stdlib_list --user

menggunakan python -m pip install stdlib_list --user

Ganti stdlib_listdengan matplotlibatau apa pun nama paket yang Anda inginkan.

Anemon Tusuk Gigi
sumber
20
Mengapa ini terjadi?
darkgaze
1
Anda membuat hari saya :)
Vrushabh Suchak
1
yuck. tetapi setidaknya Anda dapat mengatur alias alias pip="python -m pip"(atau alias pip="python3 -m pip"). tambahkan itu ke ~ / .bash_aliases atau file rc shell Anda
fbas
gunakan python3 -m pip install stdlib_list --useruntuk python3. nama modul masih pipuntuk kasus ini.
smcg
1
apakah Anda tahu bagaimana melakukan perintah di atas dalam kode python
Mamen
14

Saya memiliki masalah yang sama dengan Anda, dan saya menyelesaikannya dengan menghapus instalasi pip dan menginstalnya lagi.

Untuk menghapus instalan: python -m pip uninstall pip

Untuk menginstal, ikuti instruksi: https://www.liquidweb.com/kb/install-pip-windows/

Setelah itu Anda akan memiliki versi 19.0.3 yang lebih lama tetapi fungsional.

rdemarqui
sumber
6

Jika Anda tidak ingin menggunakan perintah panjang setiap kali python -m pip install <package>, instal ulang pip ke versi yang lebih lama di mana kesalahan ini tidak ada.

python -m pip install pip==19.0.3

Sekarang Anda akan dapat menggunakan pip install matplotlibatau secara pip listnormal.

Dan setiap kali bug teratasi, perbarui pip seperti yang Anda lakukan sebelumnya.

mudit
sumber
4

Ini bekerja untuk saya, hapus pip 19.3.1 dan ganti dengan 19.0.3, kesalahan hilang.

python -m pip install pip==19.0.3 --user
Camilo Caquimbo
sumber
2

Memiliki kebiasaan menginstal paket python dengan pip menggunakan python -m , katakanlah untuk menginstal numpy use perintah di bawah ini:

python -m pip instal numpy

Jika terjadi kesalahan dengan append menambahkan kesalahan izin lingkungan - pengguna dalam perintah yang sama:

python -m pip instal numpy --user

Piyush Upadhyay
sumber
1

Mirip dengan apa yang dikatakan @han_solo, tetapi jika Anda menjalankan python3, alih-alih menggunakan:

python -m pip install stdlib_list --user

coba gunakan:

python3 -m pip install stdlib_list --user

Alden DelVecchio
sumber
3
Alden, Alih waktu berikutnya hanya mengedit jawaban yang ada dan menambahkan python3 -m pip install stdlib_list --userbukannya memiliki jawaban yang sama sekali baru hanya untuk menambahkan nomor
Phillip Jacobs
0

Saya memiliki masalah yang sama dengan h5py-2.7.1, dan peringatan hilang setelah memutakhirkan ke h5py-2.10.0.

Ashkan
sumber
0

Saya belum dapat meninggalkan komentar, oleh karena itu saya memutuskan untuk meninggalkan tautan dengan penjelasan mengapa ini bisa terjadi: https://github.com/pypa/pip/issues/5599

Jika demikian, Anda dapat mencoba memperbaikinya dengan menurunkan versi pip dengan perintah berikut:

 python -m pip install pip==<previous version>
Dmitry Amelin
sumber
-1

Punya masalah yang sama. Saya telah berhasil memperbaikinya dengan menginstal ulang pip di tempat, menggunakan kombinasi jawaban lain:

python -m pip install -U --force-reinstall pip

Michal Sylwester
sumber