web-dev-qa-db-fra.com

pip3 "TypeError: l'objet 'module' n'est pas appelable" après la mise à jour

Je suis nouveau en Python, je veux installer Jupyter Notebook dans ma console j'entre les informations suivantes:

pip3 install --upgrade pip 

après cela, j'ai une erreur pour utiliser pip3 installer une autre bibliothèque, la console affiche:

File "/usr/bin/pip3", line 11, in <module>
    sys.exit(main())
TypeError: 'module' object is not callable

Je ne sais pas ce que je dois faire.

J'utilise Sudo autoremove python3-pip après cela j'utilise Sudo apt install python3-pip

42

Du lien par Bram, je viens de lancer python3 -m pip uninstall pip, et cela a recommencé à fonctionner.

59
Hyrial

La solution qui a fonctionné pour ma situation consiste simplement à éditer le fichier pip3.8 dans l'environnement ubuntu.

Méthode 1:

#!/path/to/.venv/bin/python3
# -*- coding: utf-8 -*-
import re
import sys

from pip._internal.main import main  # <--- look at this import statement! 

if __name__ == '__main__':
     sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
     sys.exit(main())

méthode2:

La fonction principale doit être importée ou nous pouvons simplement remplacer la ligne

sys.exit(main())

Comme

sys.exit(main.main())
4
google

Utilisez ceci

python -m pip install --upgrade --user [nom_de_votre_package]

3
Purushottam

Sous Windows, modifiez C:\ProgramData\Anaconda3\Scripts\pip-script.py et remplacez

# -*- coding: utf-8 -*-
import re
import sys
from pip._internal import main

if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
    sys.exit(main())

Remplacez la dernière ligne par sys.exit (main.main ()).

1
Maddu Swaroop

Comme vu ici , vous devriez être en mesure de résoudre ce problème en exécutant le module à partir de Python directement, c'est-à-dire.

python -m pip install --upgrade pip
0
Bram Vanroy