Pourquoi "pip install" dans Python soulève-t-il une SyntaxError?
J'essaie d'utiliser pip pour installer un paquet. J'essaie d'exécuter pip install
à partir du shell Python, mais j'obtiens un SyntaxError
. Pourquoi j'ai cette erreur? Comment puis-je utiliser pip pour installer le paquet?
>>> pip install selenium
^
SyntaxError: invalid syntax
5 réponses
Pip est exécuté à partir de la ligne de commande, pas de L'interpréteur Python. C'est un programme qui installe les modules , vous pouvez donc les utiliser à partir de Python. Une fois que vous avez installé le module, vous pouvez ouvrir le shell Python et faire import selenium
.
Le shell Python N'est pas une ligne de commande, c'est un interpréteur interactif. Vous tapez du code Python dedans, pas des commandes.
Utilisez la ligne de commande, pas le shell Python (DOS, PowerShell dans Windows).
C:\Program Files\Python2.7\Scripts> pip install XYZ
Si vous avez installé Python dans votre PATH à l'aide des derniers programmes d'installation, vous n'avez pas besoin d'être dans ce dossier pour exécuter pip
Terminal sous Mac ou Linux
$ pip install XYZ
Mise à jour: depuis la version pip 10.x Il n'y a plus de méthode get_installed_distributions()
ou main
sous import pip
utilisez plutôt import pip._internal as pip
.
Si vous voulez utiliser pip dans L'interpréteur Python, essayez ceci:
import pip
package_names=['selenium', 'requests'] #packages to install
pip.main(['install'] + [package_names] + ['--upgrade'])
# --upgrade to install or update existing packages
Si vous devez mettre à jour chaque paquet installé, utilisez ce qui suit:
import pip
for i in pip.get_installed_distributions():
pip.main(['install', i.key, '--upgrade'])
Si vous voulez arrêter d'installer d'autres paquets si une installation échoue, utilisez-la en un seul appel pip.main([])
:
import pip
package_names = [i.key for i in pip.get_installed_distributions()]
pip.main(['install'] + package_names + ['--upgrade'])
Note: Lorsque vous installez à partir de la liste dans le fichier avec -r
/ --requirement
paramètre vous n'avez PAS besoin de la fonction open ().
pip.main(['install', '-r', 'filename'])
Avertissement : certains paramètres aussi simples que {[12] } peuvent provoquer l'arrêt de l'interpréteur python.
Curiosité: en utilisant pip.exe
vous utilisez réellement l'interpréteur python et le module pip de toute façon. Si vous décompressez pip.exe
ou pip3.exe
, c'est Python 2.x ou 3.x, à l'intérieur est le même fichier unique __main__.py
:
# -*- coding: utf-8 -*-
import re
import sys
from pip import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())
Pour exécuter pip en Python 3.x, il suffit de suivre les instructions sur la page de Python: Installation des Modules Python .
python -m pip install SomePackage
Notez que ceci est exécuté à partir de la ligne de commande et non du shell python (la raison de l'erreur de syntaxe dans la question originale).
Essayez de mettre à niveau pip avec la commande ci-dessous et réessayez
python -m pip install -U pip