Python 2.7 は2020年1月1日をもってサポート終了しました(ただし2020年4月に最後のバージョン2.7.18が出ました)。Python 2.8 は出ません。
Python 3 のいろいろなインストールの方法を紹介します。
最新のものは Python 3.11 です。PyTorch 2.x が対応しましたので、もう Python 3.11 に移行してもほぼ大丈夫のはずです。
インストールしないで Google Colaboratory で使う方法については実行のページに移しました。
ライブラリ名のタイポ(綴り間違い)を狙ってマルウェアをインストールさせる手口が見つかっています。ライブラリをインストールするコマンド pip install 〜
を打ち込むときは、なるべく、正しい例をコピペしましょう。
まず、初心者のかたで、今までどこかで Python をインストールしたけれどうまく設定できていないという場合は、[スタートボタン]→[⚙設定]→[アプリ]で、それっぽいものをアンインストールしてから始めるほうがいいかもしれません。
Python のインストーラを Download Python から最新版をダウンロードし、開きます。「Install Now」をクリックする前に、特に初心者のかたは、インストーラの最初の画面で「Add Python 3.11 to PATH」にチェックを付けるほうが楽だと思います。また、「Install Now」のすぐ下に、インストールされるパスが表示されます。私の場合、C:\Users\okumu\AppData\Local\Programs\Python\Python311
と表示されました。ここが全角だったり文字化けしていたりする場合は、下の説明を見てください。問題なければ「Install Now」をクリックします。ユーザーアカウント制御「このアプリがデバイスに変更を加えることを許可しますか?」が出ますので「はい」をクリックするとインストールが始まります。インストールが無事終われば「Close」をクリックします。
インストールされるパスが全角だったり文字化していたりする場合は、インストーラが起動した画面で「Customize installation」をクリックし、「Next」をクリックし、「Customize install location」の右の「Browse」をクリックし、「PC」→「C:」を選び、「新しいフォルダーの作成」で例えば Python
というフォルダを作り、それをインストール場所に設定します。このあたりは実験が不十分なので、情報があれば教えてください。
確認として、Windows PowerShell(あるいは VS Code のターミナル、またはコマンドプロンプト)を立ち上げ、
where.exe python
と打ち込んで、正しい位置にある python
コマンドが実行されているかを確認します(コマンドプロンプトなら where python
でいいのですが PowerShell ではうまくいかないようです)。うまくいっていれば
C:\Users\ユーザ名\AppData\Local\Programs\Python\Python311\python.exe C:\Users\ユーザ名\AppData\Local\Microsoft\WindowsApps\python.exe
と出ます(2行目はもともと入っている python
コマンドで、後述のように、ストアアプリをダウンロードする画面を開くだけの機能しかありません)。これ以外の python.exe
が出ても、それが最初の行でなければ、問題ありません。
同様に pip
も確認します。
C:\Users\ユーザ名\AppData\Local\Programs\Python\Python311\Scripts\pip.exe
ほかに IDLE(Integrated Development and Learning Environment)という簡単な統合開発環境がインストールされますが、ここでは使いません。
いろいろなパッケージのインストールは pip
コマンドを使って行います。インストールされるパッケージは PyPI にあるものです。
まずは、アップデートの必要なパッケージを、次のコマンドで調べます:
pip list --outdated
最初は pip そのものが古いはずですので、まずこれを
pip install --upgrade pip setuptools
としてアップグレードします。これ以外に必要なパッケージは、その都度インストールします。例:
pip install matplotlib pandas jupyterlab
念のため、Windows PowerShell でパスを確認するには $env:path
と打ち込みます。コマンドプロンプトなら path
と打ち込みます。
追記:サードパーティのウイルス対策ソフトによっては、Python の動作、特に Jupyter Notebook に支障があるようです。Windows にもともと入っているウイルス対策ソフト Windows Defender なら大丈夫です。
なお、python のパスが設定されていない場合でも使えるように、py.exe というランチャー(起動用プログラム)が C:\Windows の中にインストールされます。こちらを使ってもかまいません。この場合、pip コマンドの代わりに py -m pip
のように打ち込みます。
Download Python からインストーラをダウンロードし、インストールします。Universal バイナリですので、Intel でも Apple Silicon でも使えます。/Library/Frameworks/Python.framework/Versions/3.11/bin
に python3
などのバイナリが入ります。また、/usr/local/bin
に
2to3
,
2to3-3.11
,
idle3
,
idle3.11
,
pip3
,
pip3.11
,
pydoc3
,
pydoc3.11
,
python3
,
python3-config
,
python3-intel64
,
python3.11
,
python3.11-config
,
python3.11-intel64
というシンボリックリンクができます。
以下では、ホームディレクトリ(例えば私なら /Users/okumura
)を ~
と略記しています。
インストールすると、Mac では(bash を使っていれば)~/.bash_profile
または(zsh を使っていれば)~/.zprofile
の最後にパスが付け加えられます:
PATH="/Library/Frameworks/Python.framework/Versions/3.11/bin:${PATH}" export PATH
ターミナルを立ち上げ直すか、あるいはターミナルに(bash なら). ~/.bash_profile
、(zsh なら)source ~/.zprofile
と打ち込みます。
私は ~/.zshenv
に環境変数を書いているのでそちらに移動しました。
以上ができたら、ターミナルに python3
と打ち込んで、次のように表示されるか確認します:
/Library/Frameworks/Python.framework/Versions/3.11/bin/python3
いろいろなパッケージのインストールは pip3
コマンド(または python3 -m pip
)を使って行います。インストールされるパッケージは PyPI にあるものです。まずは、一般ユーザで
pip3 list --outdated
と打ち込んで、更新の必要なパッケージがないか確認します。もし例えば pip
が更新を要するなら、pip3 install --upgrade pip
と打ち込みます。
必要なパッケージをインストールします。例:
pip3 install matplotlib pandas jupyterlab
これだけで、依存関係にあるパッケージ群(anyio appnope argon2-cffi argon2-cffi-bindings asttokens attrs
Babel backcall beautifulsoup4 bleach certifi cffi
charset-normalizer contourpy cycler debugpy decorator defusedxml
entrypoints executing fastjsonschema fonttools idna ipykernel
ipython ipython-genutils jedi Jinja2 json5 jsonschema
jupyter_client jupyter_core jupyter-server jupyterlab
jupyterlab-pygments jupyterlab_server kiwisolver MarkupSafe
matplotlib matplotlib-inline mistune nbclassic nbclient nbconvert
nbformat nest-asyncio notebook notebook_shim numpy packaging
pandas pandocfilters parso pexpect pickleshare Pillow
prometheus-client prompt-toolkit psutil ptyprocess pure-eval
pycparser Pygments pyparsing pyrsistent python-dateutil pytz
pyzmq requests Send2Trash six sniffio soupsieve stack-data
terminado tinycss2 tomli tornado traitlets urllib3 wcwidth
webencodings websocket-client
)がインストールされます。なお、この直後に pip3 list --outdated
と打ち込むと、すでに更新が必要なパッケージがありますが、これは新しいほどいいのではなく依存関係があるので、更新の必要はありません。
なお、このとき “Defaulting to user installation because normal site-packages is not writeable” というメッセージが出ますが、これはシステムの site-packages
ディレクトリは管理者権限がないと書き込めないので ~/Library/Python/3.11/lib/python/site-packages
にインストールしたということを意味します。また、実行ファイルが ~/Library/Python/3.11/bin
にインストールされますので、こちらにもパスを通しておきます。具体的には ~/.bash_profile
または ~/.zprofile
にさきほど追加されたものを
PATH="/Library/Frameworks/Python.framework/Versions/3.11/bin:${PATH}" PATH="${HOME}/Library/Python/3.11/bin:${PATH}" export PATH
のように書き直して、読み込み直します。
一般的なパッケージは簡単にインストールできるはずですが、ソースコードでしか提供されていないパッケージもたまにあります。そういったものをインストールするには、あらかじめターミナルに xcode-select --install
と打ち込んでコマンドラインツールをインストールしておく必要があります。中には、ビルドに gfortran が必要なものもあります。Homebrew なら brew install gcc で入ります(巨大ですし、初心者は入れないほうがいいでしょう)。
ときどき、アップデートの必要なパッケージを、次のコマンドで調べます:
pip3 list --outdated
パッケージをアップデートするには、次のように打ち込みます:
pip install --upgrade パッケージ名をスペースで区切って並べる
https サイトのスクレイピングで証明書エラーになる場合は次のコマンドの管理者権限での実行が必要になるようです:
sudo /Applications/Python\ 3.11/Install\ Certificates.command
Python をアンインストールするには /Library/Frameworks/Python.framework
および ~/Library/Python
を消します。/usr/local/bin
にできたシンボリックリンクも消します。~/.bash_profile
の類に追加した PATH も消します。
macOS では、ターミナルに xcode-select --install
と打ち込んでコマンドラインツールをインストールすると、universal binary の /usr/bin/python3 が入ります(macOS Ventura 13.0 時点では Python 3.9.6)。公式サイトの Python と同様に使えるはずです。
これ以降はあまり更新できていませんので、最新の情報でない可能性があります。
Windows の場合は Microsoft Store からもダウンロードできます(「Python」で検索)。最近の Windows なら、PowerShell かコマンドプロンプトで「python」と打ち込むと、「ストア」が立ち上がって「Python」をインストールする画面が出てきます。インストール場所は C:\Users\ユーザ名\AppData\Local\Microsoft\WindowsApps です。
コマンドは 3 を付けても付けなくても同じです(python3 = python、pip3 = pip)。
Anaconda Distribution からご自分の環境に合った最新のインストーラをダウンロードし、インストールします。全部入りなので、たいへん大きいパッケージです。最小限のインストールから始めて少しずつ足していくほうが好みの人は、下にある Miniconda を使うほうがいいでしょう。
アップデートは conda
コマンドで行います。具体的な方法は、下の Miniconda のところをご覧ください。
Windows版はユーザ名に全角文字が含まれているとインストールできない(できてもまともに動かない)ようです。どうしてもAnacondaを使わなければならない場合には、ユーザ名を変更する方法をググってお調べください。
巨大な Xcode はたいていの場合に不要ですが、ターミナルに xcode-select --install
と打ち込むとインストールされる “Command Line Tools” は、Mac を使っている開発者にとって必需品です。さらに、Homebrew(ホームブリュー)というパッケージマネージャを使っているかたが多いと思います。この場合、ターミナルに brew install python3
と打ち込めば、簡単に最新の Python が入ります。入るものは Python.org からインストールするものとほぼ同等ですがまったく同じではありません(詳しくは Python — Homebrew Documentation 参照)。
デフォルトでは /usr/local/bin
に python3
や pip3
などのコマンドが入ります。また、/usr/local/opt/python@3.9/libexec/bin
には python
など 3
の付かない名前のシンボリックリンクが入ります。
/usr/local/bin
のシンボリックリンクは python.org のものをインストールしたら上書きされてしまいますので、Homebrew のものを主に使う場合は brew link --overwrite python3
と打ち込みます。さらにわけがわからなくなったら brew reinstall python3
で再インストールできます。
この時点での pip は /usr/local/bin/pip3
です。まず pip 自身の更新をします:
pip3 install --upgrade pip
インストールしたパッケージは /usr/local/lib/python3.9/site-packages
に入ります。
ApplePersistenceIgnoreState という警告を消すにはターミナルに defaults write org.python.python ApplePersistenceIgnoreState NO
と打てばよいみたいです(参照)。
brew install pyenv
でまず pyenv を入れてから pyenv 経由で各種 Python を入れる方法です。
まず ~/.bash_profile
に次を書き込みます:
PYENV_ROOT="$HOME/.pyenv" export PATH="$PYENV_ROOT/bin:$PATH" eval "$(pyenv init -)"
次のコマンドでインストール可能なバージョンを確認します:
pyenv install --list
例えば Python 3.7.3 をインストールしたいなら
pyenv install 3.7.3
と打ち込みます。pyenv versions
でバージョンを確認します。おそらく system
と 3.7.3
があり、デフォルトでは前者になっているので、新しいほうに替えます:
pyenv global 3.7.3 pyenv rehash
python --version
でバージョンを確認します。
要らなくなったバージョンは pyenv uninstall 3.7.2
のようにして消せます。
あとは pip で更新・追加インストールします。例:
pip list --outdated pip install --upgrade pip pip install matplotlib pandas jupyterlab
Miniconda から最新の Python 3.x 版インストーラをダウンロードし、実行します。
Windows の exe 形式のインストーラは、デフォルトの「Just Me(自分だけ)」設定なら管理者権限不要でインストールできます。スタートメニューの「Anaconda」の中に「Anaconda Powershell Prompt」「Anaconda Prompt」が入るので、好きな方を使います。
Mac にも pkg 形式のインストーラがありますが、私は Mac や CentOS で bash installer を使いました:
bash Miniconda3-latest-*-x86_64.sh
まずは ENTER を押せと言ってきます。Enter を押すと、ライセンスを表示して、アクセプトするかと聞いてくるので、yes
と答えます。次に、インストールの場所は ~/miniconda3
で良いかと聞いてくるので、それで良ければ Enter を、別の場所(例えば /usr/local/miniconda3
)に変えたければその場所を打ち込みます。最後に conda init
を実行するかと聞いてくるので、yes
と打つと、Mac では ~/.bash_profile
の最後に、Linux では ~/.bashrc
の最後に、コードが追加されます。シェルを開き直すか ~/.bash何々
を再読み込みすると、Mac なら自動でプロンプトの最初に (base)
が出て、基本設定の Miniconda 環境が使えるようになります。Linux では安全のため毎回 conda activate
と打たないと Miniconda 環境になりません。元の環境(システムの /usr/bin/python
を使う)に戻すには conda deactivate
します。Mac でも自動アクティベートをオフにしたければ conda config --set auto_activate_base false
と打ち込みます(~/.condarc
に auto_activate_base: false
と書き込まれます)。
パッケージ管理は conda
コマンドで行います:
conda update --all conda list conda install ipython numpy scipy matplotlib pandas scikit-learn
WSL2のUbuntuの入れ方については、WindowsのWSL2でVS Codeを使って開発をご覧ください。ちなみに、私はWindows側をほとんど使いませんので、マシンのメモリ16Gのうち12GをUbuntuで使いたいと思いました(デフォルトは半分の8Gになります)。そのため、Windows側のホームディレクトリ(C:\Users\ユーザ名)に .wslconfig
というファイルを作り、次のように書き込んでおきました:
[wsl2] memory=12GB
GPUのあるマシンなら、WindowsとWSL2で使えるNVIDIAドライバを、Windows側でインストールしておきます。
WSL2 の Ubuntu 20.04 には python3
がすでに入っています。念のためアップグレード:
sudo apt update sudo apt upgrade
python3 --version
と打ち込むと Python 3.8.10 と表示されます。pip がないのでインストールします:
sudo apt install python3-pip pip install --upgrade pip pip install matplotlib pandas jupyterlab japanize-matplotlib
これで python3
や ipython
が使えます。
Jupyter Lab を使う際には、あらかじめ使いたいブラウザを環境変数で設定しておきます。例:
export BROWSER="/mnt/c/Program Files/Google/Chrome/Application/chrome.exe"
また、
jupyter lab --generate-config
と打ち込むと、~/.jupyter/jupyter_lab_config.py
という設定ファイルができますので、その中の
# c.ServerApp.use_redirect_file = True
というところを
c.ServerApp.use_redirect_file = False
と書き直します。これで、Ubuntu のシェルで jupyter lab
と打ち込めば、Windows 側のブラウザが開いて Jupyter Lab が使えるはずです。
CentOS 7 の標準の python コマンドは 2.7.x ですが、yum install python3
で /usr/bin/python3 や /usr/bin/pip3 が入ります(3.6.x)。
CentOS 8 では /usr/bin/python3、/usr/bin/pip3 のほうが標準です。もし入っていなければ dnf install python36
で入ります(3.6.x)。
CentOS 7 なら yum install libffi-devel sqlite-devel
しておきます。
Download Python からソースのtarballをいただいてきて展開し、ビルドします。次は3.9.2の場合です:
wget wget -N https://www.python.org/ftp/python/3.9.2/Python-3.9.2.tar.xz tar xvJf Python-3.9.2.tar.xz cd Python-3.9.2 ./configure --enable-optimizations make make install python3 --version # 3.9.2であることを確認 python3 -m pip install --upgrade pip
実行ファイル python3
、pip
などが(デフォルトでは)/usr/local/bin
に入りますので、そこにパスを通しておきます。Linux では python
コマンドで Python 2 が動くことが想定されていることがあるので、python3
という名前はそのままにしておくほうがよさそうです。
Google Colaboratory については実行のページに移しました。
https://notebooks.azure.com は Google Colab と同じようなサービスです。
Jupyter Notebook が使えます。
サーバ側に Python をインストールし、jupyter 等を入れておきます。サーバ側で jupyter notebook --generate-config
を実行し、生成された ~/.jupyter/jupyter_notebook_config.py
を編集してリモートからの接続を許可します。
c.NotebookApp.allow_remote_access = True c.NotebookApp.ip = '*' c.NotebookApp.open_browser = False c.NotebookApp.port = 8888
パスワードを設定するには、Python で from notebook.auth import passwd; passwd()
を実行し、パスワードを打ち込み、表示されるパスワードのハッシュを ~/.jupyter/jupyter_notebook_config.py
に記入します:
c.NotebookApp.password = 'sha1:0eced8e273ef:1ef78265e258e76cc0d01e60afcc8df50ea58f8d'
これで、サーバ側で、重要なものの入っていないディレクトリの中で nohup jupyter notebook &
を実行し、リモートのブラウザで http://ホスト名:8888
をアクセスします。
パスワードを設定しない場合は、jupyter 起動時に出るトークンを含んだ URL にアクセスします。
このままではローカルユーザの権限ですべてのファイルにアクセスできてしまいますので、不特定多数の人に使ってもらう際には要注意です。
もっと本格的にやるには JupyterHub を立ち上げましょう。
Brython(Browser Python)はWebブラウザの中で動くPython(つまりJavaScriptで実装したPython)です。自分のWebページ内で動かすことができます。こちらで試せます。
東京書籍の EduTown プログラミング で使っているのも brython です。
Jupyter のサイトで Try it in your browser のボタンをクリックすることでも Jupyter Notebook が試せます。ほかにも、オンラインで種々の言語の実行環境を提供するサービスがいくつかあるようです。CoCalc とか repl.it とか codepad とか ideone とか。
初心者の学習用に作られたオンラインプログラミング環境 ビットアロー(Bit Arrow)では、ブラウザ上で JavaScript、ドリトル、簡易C、DNCL、Python が使えます。Python はブラウザの JavaScript で実行することも、サーバ側の Python 3 を実行することもできます。後者の場合は matplotlib
の最小限の機能も使えます。日本語 Python PyPEN も実験中。
PyPy という JavaScript の JIT コンパイラがあり、ブラウザ上で実行できます(お試しサイト pypyjs.org)。グラフィックスはできないようです。
QGIS(オープンソースのGISソフトウェア)にもPythonが含まれています。
iOS/iPadOS に iSH という無料のアプリ(中身は Alpine Linux)を入れて
apk add python3 py3-pip
と入力すると python3 コマンドや pip コマンドが使えるようになります。最初はOSが許可を求めてきますので許可を与えます。その間に apk コマンドのほうはタイムアウトしてしまうことが多いため、エラーになったら上記コマンドを再度投入します(矢印キーを上にスワイプすると一つ前のコマンドに戻ります)。うまくいったら python3 と打ち込むと Python が起動します。たいへん便利です。残念ながら日本語は表示できません。
ほかに、iOS用の Pythonista 3 というアプリ(有料)でPythonが使えます。
Carnets - Jupyter というアプリ(無料)は iOS・iPadOS で動く Jupyter notebook 環境です。Python インタープリタも入っており、Numpy、Sympy、Matplotlib、Pandas などが含まれ、なんと OpenCV も使える そうです。
カシオの電卓 fx-CG50 などで MicroPython という Python のサブセットが使えるようです。