LoginSignup
0
3

More than 3 years have passed since last update.

【Windows・Ubuntu】Pythonの環境構築備忘録2020

Last updated at Posted at 2020-12-04

最近のPython環境構築方法の動向

  1. 公式
    最新のバージョンは、2020年12月現在、3.9.1です。
    公式のインストール方法は、大きくは変わっていないです。

  2. Anaconda
    以下の4種類があります。
    大抵の人は、Individual Editionを使うと思います。

    • Commercial Edition
      • 7500を超える データサイエンス / Machine Learning のパッケージ
      • セキュリティと互換性に優れたすべてのAnacondaのパッケージを利用できる
      • $14.95/月
    • Team Edition
      • CVEレポート
      • ユーザー・アクセス・コントロール
      • $10,000~
    • Enterprise Edition
      • すべてそろってる
      • サポートあり?
      • 価格は相談
    • Anaconda Individual Edition
      • 個人用
      • 無料
  3. pyenv
    昔からある有名な環境構築ツールの一つです。

    変化あり?(Windows)
    libexec フォルダが追加されたみたいです。
    代わりに、 shims フォルダは途中から出現するようになったみたいです。

次の Pipenv との組み合わせがよさそうです。

  1. Pipenv
    最近注目されている環境構築ツールの一つです。
    上記 pyenv との組み合わせがよさそうです。

  2. その他
    思ったよりたくさんの環境構築ツールがありました。
    上記の環境構築ツールと合わせてまとめると、以下のようになります。

環境構築ツール名 説明
Anaconda データサイエンス向けディストリビューション
pyenv 複数のPythonバージョンを切り替えるツール
virtualenv プロジェクトごとにPython環境を切り分けるツール
pyenv-virtualenv 切り分けた環境をPyenv上で選べるようにするPyenv用プラグイン
pyvenv Python標準のvirtualenvラッパー(※ある記事によると非推奨らしいです)
python -m venv Python標準のvirtualenvラッパー
Pipenv Pythonプロジェクトの管理ツール

参考:Pythonにまつわるツールのまとめ

※最近の主流は、 pyenvPipenv になっているみたいです。
参考:pyenv、pyenv-virtualenv、venv、Anaconda、Pipenv。私はPipenvを使う。

公式の環境構築方法

ここでは、pythonの公式サイト(python.org)からダウンロードしてインストールする方法を説明します。

対象ユーザー

とにかく、シンプルにPythonをインストールしたい人向け。

メリット

  • 一番簡単な構築方法なので、すぐに構築作業が終わる
  • 公式の構築方法なので、無償かつ、商用利用可能
  • exeのインストーラーを使って、グラフィカルに、ほとんど自動でPythonのインストールが可能
  • 最新の Python バージョンをインストール可能

デメリット

  • 簡単な分、あとで必要なライブラリが増えると、手動のセットアップ作業も増える
  • 複数の環境を同時に共存させられないので、環境ごとにPC(OS)を変えなければならない

構築手順

Windows

  • OS:Windows10
  • Python:3.9.0

まず、Pythonの公式サイト > Downloads > Download Python 3.9.0ボタン をクリックして、「python-3.9.0-amd64.exe」をダウンロードします。

python-3.9.0-amd64.exe を実行します。

表示された最初のウィンドウでインストールの方法を選択します。
おすすめは、以下の設定です。

  • Install launchar for all users (recommended) にチェック
  • Add Python 3.9 to PATH にチェック
  • Customize installation を選択
    公式_002_e.png

次の画面で Next をクリックします。

  • チェック項目はデフォルトで全て選択になっています
  • 必要に応じてチェックをはずします
  • 通常は、そのままで大丈夫でしょう



Advanced Options の画面で、必要な項目にチェックをつけて、Installをクリックします。
おすすめは、以下の設定です。

  • Install for all users
  • Associate files with Python (requires the py launcher)
  • Add Python to environment variables
  • Precompile standard library
  • Download debugging symbols
  • 「Customize install location」の例:C:\Python\Python39 公式_003_e.png

Setup Progress のウィンドウでインストールが完了するのを待ちます。

Setup was successful のウィンドウに遷移したら Close ボタンで閉じます。

コマンドプロンプトを起動して、 python を実行して、以下のような文章が表示されればインストール完了です。

Python 3.9.0 (tags/v3.9.0:9cf6752, Oct  5 2020, 15:34:40) [MSC v.1927 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

あとは、 pip コマンドを利用して、必要なライブラリをインストールしていきます。

Ubuntu

  • バージョン:20.04.1 LTS

上記環境には、すでに Python 3.8 がインストールされています。
python 3.9 をインストール・設定したい場合、以下の手順を参考にしてください。

パッケージ情報を更新

$ sudo apt update

Python 3.9 をインストール

$ sudo apt install python3.9

Pythonのバージョンを変更(以下は例)

$ update-alternatives --install /usr/bin/python3 /usr/bin/python3.9 1

参考:UbuntuでPythonのバージョンを変更する方法

Pythonのバージョンを確認

$ python3 -V

Python 3.9.0+ のように表示されれば設定完了

このままだと、 pip がない状態なので、 pip をインストールします。

$ sudo apt install python3-pip

最後に、 pip3 list を実行して、インストールされている python のライブラリのリストが表示されれば、準備完了です。

Anacondaの環境構築方法

ここでは、個人用で無料の Individual Edition を想定して説明します。
また、 Anaconda のインストール部分を中心に説明します。
 ※データサイエンス分野の環境構築については、 こちら の環境構築の記事が参考になります。

対象ユーザー

以下のような方におすすめします。

  • 個人であり、無料で環境構築したい人
  • 複数のPythonの環境を共存させたい人
  • Pythonで機械学習をはじめとするデータサイエンス分野の環境を構築したい人
  • Pythonをベースとして、画像処理に特化した OpenCV を手軽に環境構築したい人

メリット

  • 複数の環境を同時に共存させられる
  • 個人利用であれば、無料
  • データサイエンス分野の環境を手軽に構築することができる
  • Pythonで画像処理をするための OpenCV の環境が手軽に構築できる
  • GUI を利用してグラフィカルに Anaconda 自体・Python の環境をインストール・構築できる

デメリット

  • 商用利用の場合は費用がかかる($14.95/月)
  • 他の環境構築方法と比べて、ベース環境のインストール(初期インストール)に時間がかかる

構築手順

Windows

  • Windows 10
  • Anaconda3 (Python 3.8)
  • Individual Edition

Anaconda の Individual Edition > 「Download」ボダンをクリック > ページ内移動後の Windows の部分 > 64-Bit(32bit) Graphical Installer をクリック で exe ファイル(例:Anaconda3-2020.11-Windows-x86_64.exe)をダウンロードします。

exe ファイルを実行します。

インストールのウィンドウが表示されるので、OS を再起動したくなければ、他のアプリケーションを終了しておきます。

ライセンス契約の文章を確認して、「I Agree」ボタンをクリックします。

インストールのタイプを選択する画面で、PC上の今アクティブなユーザー(自分)だけにインストールするか、全てのユーザーにインストールするかを選んで、「Next >」ボタンをクリックします。
(ここでは、全てのユーザー(All Users)を選択しています。)

インストールする場所を指定するウィンドウが表示されるので、任意のインストール場所を設定します。
(例:C:\Python\Anaconda3\)

デフォルトで「Register Anaconda3 as the system Python 3.8」にのみチェックがついているので、内容を確認してそのまま「Install」ボタンをクリックします。
(システム環境変数 (PATH) に Anaconda3 を設定するのは、 Anaconda3 のアンインストール時に問題を引き起こす可能性があるので、お勧めしません。)
Anaconda_001.png

インストールの進捗バーが表示されるので、インストール処理が終了するまで待ちます。

インストール処理が終わったら、「Next >」ボタンをクリックします。

PyCharm のダウンロードのお知らせページで「Next >」ボタンをクリックします。

インストール完了のウィンドウが表示されたら、全てのチェックを外して「Finish」ボタンをクリックします。

次に、環境変数の設定をします。
コントロールパネル > ユーザーアカウント > ユーザーアカウント > 環境変数の変更 をクリックします。
(ここでは、あえてユーザーアカウントから設定する手順を踏んで、システム環境変数を編集しないようにしています。)

ユーザー環境変数 > Path を選択して、「編集」ボタンをクリックします。

「新規」ボタンをクリックして、 Anaconda の関連する以下のフォルダを追加します。

  • (例)「C:\Python\Anaconda3」
  • (例)「C:\Python\Anaconda3\Scripts」
  • (例)「C:\Python\Anaconda3\Library\bin」
    この際、古い Anaconda のフォルダが登録されていたら、そのパスを削除しておきます。(エラー回避のため)

最後に、適切にインストールされたかを確認します。
コマンドプロンプトを起動して、 conda -V と入力して実行します。
conda 4.9.2 というように Anaconda のバージョンが表示されます。
続いて、 conda env list と入力して実行します。
以下のように、思った通りのパスが表示されればインストール完了です。

# conda environments:
base                  *  C:\Python\Anaconda3

Ubuntu

  • バージョン:20.04.1 LTS
  • Anaconda3 (Python 3.8)
  • Individual Edition

注意事項

anaconda単独だと実は問題があります。
curlやsqlite3,opensslなどを一緒にインストールして動作をのっとります。

参考:データサイエンティストを目指す人のpython環境構築 2016

上記の記事にもあるように、 Linux の場合は他のソフトの動作をのっとることがあるようです。
このような予期せぬ動作を防ぐために、 pyenv を経由することが推奨されています。
上記の記事の環境構築方法をそのまま参考にして、まずは pyenv をインストールします。

$ git clone https://github.com/yyuu/pyenv.git ~/.pyenv
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc
$ source ~/.bashrc

次に、 Anaconda をインストールします。
(今や、 Python 3.8 が登場していて、 Anaconda は 3系しかないです。)

# 最新版を確認。
$ pyenv install -l | grep ana

# 2020年12月現在、 anaconda3-2020.07 が最新
# 以下の一行の実行完了には少し時間がかかります。 (Installed Anaconda~ が表示されれば、インストール完了です。)
$ pyenv install anaconda3-2020.07
$ pyenv rehash

# anacondaをメインのpythonに設定。
$ pyenv global anaconda3-2020.07

# activateがpyenvとanacondaでバッティングするので、pathに明示しておく。
$ echo 'export PATH="$PYENV_ROOT/versions/anaconda3-2020.07/bin/:$PATH"' >> ~/.bashrc
$ source ~/.bashrc

#念のためconda自体をアップデートしておく。
$ conda update conda

注意事項

$ echo 'export PATH="$PYENV_ROOT/versions/anaconda3-2020.07/bin/:$PATH"' >> ~/.bashrc
には副作用があって、pyenv globalやpyenv localをいっさい受け付けずに、常にanacondaを使うようになります。
anaconda以外も使う人や、主に pyenv local で運用したい人などは、Pathに記載するのをやめてcondaのactivateをフルパスで入れる必要があります。
source ~/.pyenv/versions/anaconda3-2020.07/bin/activate <環境名>
環境を頻繁に切り替えないでanacondaだけでやっていく人はpathに明示した方がよいと思います。

参考:pyenvとanacondaを共存させる時のactivate衝突問題の回避策3種類

最後に、適切にインストールされたかを確認します。
端末を起動して、 conda -V と入力して実行します。
conda 4.9.2 というように Anaconda のバージョンが表示されます。
続いて、 conda env list と入力して実行します。
以下のように、思った通りのパスが表示されればインストール完了です。

# conda environments:
#
base                  *  /home/[ユーザ名]/.pyenv/versions/anaconda3-2020.07

pyenv + Pipenv の環境構築方法(参考。考古学的構築方法)

ここでは、最近のPythonの環境構築方法で主流となっているらしい、 pyenvPipenv を組み合わせた方法を説明します。
ここでの説明は、最新の利用方法とは言えないので、あくまで考古学的な構築方法として参考にしてください。

対象ユーザー

以下のような方を想定しています。

  • 個人であり、無料で環境構築したい人
  • 複数の Python の環境を共存させたい人
  • Python でデータサイエンス分野を主な開発分野としていない人
  • 軽い動作の Python 開発環境を構築したい人

メリット

  • 複数の環境を同時に共存させられる
  • オープンソースなので制限なく無料
  • Anaconda と比べて比較的動作が軽い
  • 必要なライブラリだけ追加していくので、保存領域を無駄に使わない
  • 最新の Python バージョンをインストール可能

デメリット

  • 必要なライブラリが大量にある場合、インストール時のコマンドが長くなる
  • 事前にライブラリのバージョンの互換性を把握しておかなければならない
  • コマンド操作なので、操作には慣れが必要

構築手順

Windows

  • Windows 10
  • pyenv-win (version: 2.64.3)

注意:公式の pyenv は Windows に対応していません。

そのため、今回は 3rdパーティー のツール pyenv-win を利用します。
このツール、 本家pyenv と異なり Anaconda の管理はできませんが
Python だけなら同じ感覚で管理可能です。

参考:Windows10(非WSL)にpyenv+pipenv環境構築

はじめに、 Linux の pyenv と同じように、ホームディレクトリ(デフォルトは C:\User\ユーザー名\ の配下)に、 .pyenv フォルダを用意してリポジトリをクローンします。

git clone https://github.com/pyenv-win/pyenv-win.git %USERPROFILE%/.pyenv

(git が未導入の場合はリポジトリをダウンロードして配置しましょう)
 → pyenv-win の公式サイト

次に、環境変数の設定をします。
ユーザー環境変数 PYENVPYENV_HOME がなければ、新規作成して、 クローンしたフォルダのパス を設定します。
 ※ メモPYENV_HOME は Pipenv をサポートするための環境変数です。

ユーザ環境変数の設定方法
コントロールパネル > ユーザーアカウント > ユーザーアカウント > 環境変数の変更 をクリックします。
(ここでは、あえてユーザーアカウントから設定する手順を踏んで、システム環境変数を編集しないようにしています。)
ユーザー環境変数 > PYENV と、 ユーザー環境変数 > PYENV_HOME を新規作成 or 編集します。
クローンしたフォルダのパスを設定します。

%USERPROFILE%\.pyenv\pyenv-win

続いて、 Path に、 bin フォルダと libexec フォルダのパスを追加します。
 ※ 注意 :上記2つのフォルダのパスの設定は、 %USERPROFILE%\AppData\Local\Microsoft\WindowsApps よりも上位に設定してください。もし下位に設定した場合は Windows 側が Python がないとみなして Microsoft store の Python を勧めてくるそうです。

%USERPROFILE%\.pyenv\pyenv-win\bin
%USERPROFILE%\.pyenv\pyenv-win\libexec

コマンドプロンプトを開いていたら閉じて、再起動して、 pyenv --version を実行してください。
以下の3パターンがあります。
1. pyenv 2.64.3 というようにインストールされた pyenv のバージョンが表示されれば、正常ですので、そのまま次に進んでください。
2. コマンドが見つかりません、というようなエラーが表示された場合は、これまで設定した環境変数が正しいか確認してください。
3. コマンドが見つかりません、というようなエラー表示、かつ、 Visual Studio Code かその他の IDE のターミナルを使っていた場合は、再起動して再度実行してみてください。

ホームディレクトリ(デフォルトは C:\User\ユーザー名\ の配下)で pyenv rehash を実行してください。
 ※エラーになった場合は、これまでの手順を再度見直してください。(それでも解決しなければ こちら を確認してください)

pyenv を実行してください。 pyenv がサポートしているコマンドのリストが表示されれば、 pyenv のインストールは完了です。

pyenv のインストールが完了したら、 pyenv の初期設定を行います。

< pyenv の初期設定 >
確認できる Python のバージョンのリストを更新します。

pyenv update

※少し時間がかかります。(1~3分)

pyenv windows (pyenv-win) がサポートしている Python のバージョンのリストを確認します。

pyenv install -l

pyenv update で更新したリストが一気に表示されます。

上記で確認したリストの中から、インストールしたい Python のバージョンを指定して、 Python をインストールします。
(例):

pyenv install 3.9.1

※インストール中は、随時メッセージが表示されます。その際、質問が表示されることがあるので、そのまま Enter キーを押下していきます。(デフォルトの選択肢から変更しなくてもインストールできます。必要に応じて選択肢を変更してください。)
pyenv install-q オプションを付けることで、インストール中のいらないメッセージ、質問を非表示にしてインストールすることも可能です。 (quite installation)
※1つのコマンドで複数のバージョンを一度にインストールすることも可能です。(例: pyenv install 2.7.18 3.9.1

pyenv の Python のグローバルバージョンを設定するには、以下を実行します。
(例):

pyenv global 3.9.1

pyenv の Python のローカルバージョンを設定するには、以下を実行します。
(例):

pyenv local 3.9.1

pip コマンドでライブラリを (アン)インストールしたとき、もしくは、バージョンのフォルダの中のファイルを変更したときは pyenv 自体をアップデートするため、以下を実行します。

pyenv rehash

※上記コマンドは、 .pyenv フォルダーの外部で実行しなければなりません。

pyenv が管理している Python について、現在のフォルダにどの Python バージョンが設定されているかは pyenv version で確認、 pyenv のシステムにインストールされているすべての Python バージョンを表示するには pyenv versions を実行します。
※公式(pyenv-win)のその他の情報はこちらを確認してください。

Python 関連のコマンド(python 自体、 pip など)が動くよう Path を再度設定します。(※最新情報)
C:\User\ユーザー名\.pyenv\pyenv-win の中に shims フォルダが作成されています。
このフォルダのパス( %USERPROFILE%\.pyenv\pyenv-win\shims )をコピーして、これまでと同じようにコントロールパネルから ユーザー環境変数 > Path の設定まで移動して、 コピーしたパスを %USERPROFILE%\AppData\Local\Microsoft\WindowsApps よりも上位に設定します。

Python の動作確認を行います。
コマンドプロンプトを再起動してください。

python --version

上記のコマンド実行後、 Python 3.9.1 というようにインストール・設定した Python のバージョンが表示されれば問題ありません。 Python 自体のインストールは完了です。

pyenv の Python が正常にインストール・設定できていない場合 (原因候補1)

過去に Anaconda をインストールして Path の設定をしていたことが弦だと思われます。
以下のように確認・修正してください。
1. コントロールパネル > ユーザーアカウント > ユーザーアカウント > 環境変数の変更 をクリック
2. ユーザー環境変数 > Path を選択
3. 編集 をクリック
4. 表示された環境変数の一覧を確認し、 C:\Python\Anaconda3C:\Python\Anaconda3\Scripts のような古い Anaconda のパスが残っている場合は該当のパスを選択し 削除 ボタンをクリック
5. 念のため Windows を再起動

pyenv の Python が正常にインストール・設定できていない場合 (原因候補2)

過去に Python公式 から Python をダウンロード・インストールしていたことが原因だと思われます。
以下のように確認・修正してください。
1. コントロールパネル > システムとセキュリティ > システム > システムの詳細設定 > 環境変数 をクリック
2. システム環境変数 > Path を選択
3. 編集 ボタンをクリック
4. 表示された環境変数の一覧を確認し、 C:\Python\Python39\Scripts\C:\Python\Python39\ のような古い Python のパスが残っている場合は該当のパスを選択し 削除 ボタンをクリック
5. 念のため Windows を再起動
注意 :上記の修正では、システム(OS)が参照している重要なパスも表示されています。これらのパスは 絶対に削除しないでください 。他のアプリケーションや、最悪、 Windows 自体の動作 にも影響しかねません。落ち着いて冷静に設定してください。

< Pipenv の導入 >
まずは、 pip コマンドを用いて、 Pipenv をインストールします。

pip install pipenv

Successfully installed ~ が表示されればインストール自体は終わっています。
ただし、ここで注意する点は、今回 公式なpyenvではなく3rdパーティーのツールを使っている ことです。
このため、このままだと pipenv コマンドが認識されません。
今回、 こちら のサイトを参考に pipenv コマンドを設定しました。

C:\User\ユーザー名\.pyenv\pyenv-win\shims 配下の以下の2ファイルを、コピー&ペーストします。(方法はお任せします。私は、エクスプローラー上で Ctrl + CCtrl + V を用いました。)
pip
pip.bat

コピペした2ファイルを、ファイル名が対応するように以下の名前にリネームします。
pipenv
pipenv.bat

最後に正しく設定できたか確認します。
コマンドを実行して、以下のように表示されれば Pipenv の環境構築は完了です。

C:\>pipenv --version
pipenv, version 2020.11.15

Ubuntu

まとめ

参考文献

0
3
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3