はじめに
古い情報があふれているため、2021年における Python のインストール手順についてまとめます。
Python のインストールは、オリジナルな Python か、科学技術計算向けのAnacondaディストリビューションを介するかのいずれかで行うことが多いです。
ここでは、オリジナルな Python 処理系のインストール手順について示します。バージョンは Python 3.10 をターゲットとします。
Mac 環境は以下を参照してください。
Windows 環境へのインストール
https://www.python.org/
](https://www.python.org/) からOSに応じたインストーラをダウンロードして実行します。
ここでは、Python Releases for Windows のページ中、Download Windows installer (64-bit) のリンクから、python-3.10.0-amd64.exe をダウンロードしました。
Windows 向けのリリースパッケージには、その他に Windows embeddable package
も提供されています。これは Python 3.5 から提供されるようになった、埋め込み可能なパッケージです。
最小限の Python 環境を含んだ ZIP ファイルで、何かアプリケーションの一部に埋め込んで利用するためのものです。通常は、Windows embeddable package
ではなく、Windows installer によりインストールすることになるでしょう。
インストーラ python-3.10.0-amd64.exe
を実行すると以下のウイザードが立ち上がります(既に Phthon がインストール済みで、マイクロバージョン違いのインストーラを実行した場合には、アップグレードインストールとなります)。
このダイアログにて、多くの入門記事では Add Python 3.XX to Path
にチェックを入れるように案内されていますが、通常は python コマンドは使わず、py コマンドを使うことになるため、デフォルトの通り 未チェックで進めておけば良いです。
なお、Add Python 3.XX to Path
にチェックを付けた場合は、環境変数 Path に以下が追加されます。
- C:\Users\<USER_NAME>\AppData\Local\Programs\Python\Python310\Scripts\
- C:\Users\<USER_NAME>\AppData\Local\Programs\Python\Python310\
[Install Now] を選択して進め、インストールを完了します。
[Disable path length limit] について簡単に説明しておきます。
Windows はファイルパスは最大260文字に制限されていましたが、Windows10からは、この制限を解除できるようになりました。それに伴い、Python 3.6 から長いファイルパスのサポートが可能となり、この設定解除をインストール時に行うことができます。通常は設定せずに、そのまま Close で終了します。
py コマンド
インストールが完了すると、C:\Windows
以下に pyshellext.amd64.dll
pyw.exe
py.exe
が作成されます。
Windows のインストーラでは、Python 3.3 より、このコマンドがデフォルトでインストールされます。
py
コマンドは、python
コマンドのランチャであり、インストールされた複数バージョンの python
の切り替えが行えます。
Python 操作時には、py
コマンドを利用することになります。
py コマンドでバージョンを確認します。
> py --version
Python 3.10.0
py
コマンドは、複数バージョンの Python がインストールされている場合、最新のバージョンが選択されます。バージョンを指定したい場合は以下のように指定できます。
> py -3.7 xxx
インストールされている Python は以下でリストすることができます。
> py --list-paths Installed Pythons found by py Launcher for Windows -3.10-64 C:\Users\<user>\AppData\Local\Programs\Python\Python310\python.exe * -3.7-64 C:\Users\<user>\AppData\Local\Programs\Python\Python37\python.exe
venv で仮想環境を作成する
Python では、Python ランタイムのバージョンに加え、周辺ライブラリパッケージのバージョン管理が必要になります。 ライブラリを(pipを使って)インストールすると、グローバルにインストールされるため、プロジェクトに応じたパッケージバージョンを利用するには実行環境を切り替える仮想環境を使う必要があります。
Python 3.4 までは、仮想環境のツールは pyvenv でしたが、Python 3.6 では非推奨となり、現在は venv が推奨ツールとなっています(旧来の virtualenv が venv として取り込まれたものです)。
venv を使うことで以下が実現できます。
- システム全体で使うPython環境に影響を与えずにモジュールの追加・入れ替えを行う
- 異なるバージョンの Python を使いわけたり、同じモジュールの複数のバージョンを使い分ける
仮想環境は、プロジェクトディレクトリで以下のように作成します。
> mkdir python > cd python > py -m venv .venv
.venv
は仮想環境のディレクトリ名で、好きな名前を付けることができます(.venv
とすることが多いです)。
仮想環境ディレクトリの .venv\Scripts
配下には以下のスクリプトが作成されます。
activate activate.bat Activate.ps1 deactivate.bat pip.exe
pip3.10.exe pip3.exe python.exe pythonw.exe
作成されたスクリプトを使って、仮想環境への切り替えを行います。
> .venv\Scripts\activate.bat (.venv) >
仮想環境への切り替えを行うと、プロンプトに仮想環境名が表示されるようになります。
上記はコマンドプロンプトの例です。PowerShell では以下となります。
> .venv\Scripts\Activate.ps1 (.venv) >
PowerShell でポリシーエラーが出る場合は、以下でポリシーの変更を行い、再度実行してください。
PS C:\> Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Force
仮想環境から抜けるには以下のようにします。
(.venv) > deactivate >
Python のバージョンを指定した仮想環境は、py
コマンドにバージョンを指定することで作成できます。
> py -3.7 -m venv py37env
pip でパッケージをインストールする
pip
は、Python パッケージの管理を行うユーティリティで、Python 3.4 以降で標準付属されています。pip
コマンドを利用することで、The Python Package Index に公開されているパッケージのインストールなどを行うことができます。
pip
によるパッケージ操作は、通常、仮想環境で操作します。仮想環境で操作することで、プロジェクト別で利用するパッケージのバージョンを管理することができます。
pip
のバージョンは以下のように確認できます。
(.venv) > py -m pip --version pip 21.2.3 from C:\Users\<path_to_project>\.venv\lib\site-packages\pip (python 3.10)
仮想環境内の pip
が使われていることがわかると思います。
仮想環境内では、パスが通っているので、py -m
を付けなくても大丈夫です。仮想環境外での利用も考慮して、ここでは py -m
を付けて記載します。
pip
のアップグレードは以下のように行います。
(.venv) > py -m pip install --upgrade pip Requirement already satisfied: pip in c:\users\<path_to_project>\.venv\lib\site-packages (21.2.3) Collecting pip Downloading pip-21.3-py3-none-any.whl (1.7 MB) ...
pip
によるパッケージのインストールは pip install
で行います。
例えば、django パッケージのインストールは以下のようになります。
(.venv) > py -m pip install django Collecting django Downloading Django-3.2.8-py3-none-any.whl (7.9 MB) ・・・
折角なので、アプリを起動してみましょう。
(.venv) > django-admin startproject sample (.venv) > cd sample (.venv) > $ py manage.py runserver
起動できましたね。
pip
自体の操作は別の記事で説明します。