パッケージをインストールするのにpipを使おうとしています。 Pythonシェルからpip install
を実行しようとしましたが、SyntaxError
を取得しました。このエラーが発生するのはなぜですか? pipを使用してパッケージをインストールする方法
>>> pip install Selenium
^
SyntaxError: invalid syntax
pipはPythonインタプリタではなく、コマンドラインから実行されます。 モジュールをインストールするプログラムなので、Pythonからそれらを使うことができます。モジュールをインストールしたら、Pythonシェルを開いてimport Selenium
を実行します。
Pythonシェルはコマンドラインではなく、対話型のインタプリタです。コマンドではなくPythonコードを入力します。
Pythonシェル(DOS、WindowsではPowerShell)ではなく、コマンドラインを使用してください。
C:\Program Files\Python2.7\Scripts> pip install XYZ
最新のインストーラを使用してPythonをPATHにインストールした場合は、pipを実行するためにそのフォルダにいる必要はありません。
MacまたはLinuxのターミナル
$ pip install XYZ
UPDATE:pipバージョン10.x以降これ以上ありませんimport pip
の下のget_installed_distributions()
またはmain
メソッドは、代わりにimport pip._internal as pip
を使用します。
UPDATE約v.18get_installed_distributions()
は削除されました。代わりに、ジェネレータfreeze
を次のように使うことができます。
from pip._internal.operations.freeze import freeze
print([package for package in freeze()])
# eg output ['pip==19.0.3']
import pip
package_names=['Selenium', 'requests'] #packages to install
pip.main(['install'] + package_names + ['--upgrade'])
# --upgrade to install or update existing packages
インストールされているすべてのパッケージを更新する必要がある場合は、以下を使用してください。
import pip
for i in pip.get_installed_distributions():
pip.main(['install', i.key, '--upgrade'])
インストールに失敗した場合に他のパッケージのインストールを中止したい場合は、1回のpip.main([])
呼び出しでそれを使用してください。
import pip
package_names = [i.key for i in pip.get_installed_distributions()]
pip.main(['install'] + package_names + ['--upgrade'])
注:-r
/--requirement
パラメータを使用してリスト内のファイルからインストールする場合は、open()関数は必要ありません。
pip.main(['install', '-r', 'filename'])
警告:単純な--help
のようないくつかのパラメータはpythonインタプリタを停止させるかもしれません。
好奇心:pip.exe
を使うことによってあなたはとにかく実際にはpythonインタプリタとpipモジュールを使います。 python 2.xまたは3.xに関係なくpip.exe
またはpip3.exe
を解凍すると、中には__main__.py
という単一のファイルがあります。
# -*- coding: utf-8 -*-
import re
import sys
from pip import main
if __== '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())
Python 3.xでpipを実行するには、Pythonのページの指示に従ってください( Pythonモジュールのインストール 。
python -m pip install SomePackage
これはpythonシェルではなくコマンドラインから実行されることに注意してください(元の質問の構文エラーの理由)。
下記のコマンドでアップグレードpipを試して再試行してください。
python -m pip install -U pip
iDLEではなくcmdで入力する必要があります。 IDLEから何かをインストールしたい場合は、プロンプトを表示しないでください。
>>>from pip.__main__ import _main as main
>>>main(#args splitted by space in list example:['install', 'requests'])
これは端末でpip <commands>
のようにpipを呼び出しています。コマンドは、そこに行っているスペースで区切られます。
プログラムでは、次の現在は機能します。 10.0以降のすべての回答が表示されますが、正しい回答はありません。確かに、Kaggle内では、このアプローチは機能します
from pip._internal import main as _main
package_names=['pandas'] #packages to install
_main(['install'] + package_names + ['--upgrade'])