Pythonのインストール方法の選択肢 | Django 入門

Python独学ならTech-Joho TOP > django入門 > Pythonのインストール方法の選択肢

どれを選べばいいか

Windows10でDjangoの開発をするにあたって、そもそもPythonをインストールする方法が複数あります。
どれを選べばいいか、一つ一つメリット・デメリットを考えてみます。

主な方法は3つあります。

  1. 公式のWindows版インストーラを使う方法
  2. Pythonに最初から入っている仮想環境ツールvenvを使う方法
  3. 仮想環境ツール&パッケージマネージャーのanacondaを使う方法

結論から言うと、anacondaを使うのが特に初心者には無難な気がします。
(が全く面倒がないわけではありません…)

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

https://qiita.com/y__sama/items/5b62d31cb7e6ed50f02c

Windows版インストーラ

Windows版インストーラのダウンロード

インストーラは下のリンク先からダウンロードできます。

python.org(Pythonの公式ページ)
https://www.python.org/downloads/
「Download Python 3.6.3」をクリックして下さい。

download

Windows版インストーラによるインストール

インストーラをダブルクリックして起動後、「Install Now」をクリックしてください。

install

ウインドウの下にある「Add Python 3.6 to PATH」というチェックボックスは、Pythonの実行ファイルまでのPathを環境変数に追加するか否かを選択するものです。
ここで、ほかにPythonを使う予定がある場合、追加してしまうと、今インストールしているPythonが優先になってしまいます。どうすべきかは状況によります。
このような判断も、仮想環境を使うと必要がなくなるので、インストーラを使う方法は実はおすすめでははありません。

この記事ではチェックを入れないで進むことにします。

また、この手順でインストールされるのは、Pythonの32ビット版です。

「Setup was successful」という画面が表示されたら正常にインストールが完了しています。

Windows版インストーラでインストールしたPythonを使う方法

スタートメニューに「IDLE(Python 3.6 32-bit)」が追加されているはずです。
startmenu

こちらをクリックすると、Pythonと同時にインストールされた簡易的な統合開発環境IDLEが起動します。

こちらには、Pythonを対話的に実行できる、つまりコードを入力してすぐ結果を見ることのできる環境Python 3.6.2 Shellと、ファイルにPythonコードを書いて実行できる機能が含まれています。

Shellrepl

ファイル編集file

Pythonの学習時などに、ちょっと実行してみたいときはShellを、プログラムを開発するときにはファイルの編集機能を使いましょう。

IDLEのファイルの編集画面では、「F5」キーを押すことですぐに実行できて便利です。

プログラムを実行した結果は、このようにShellに表示されます。


file2

*また、もし、インストール時に「Add Python 3.6 to PATH」にチェックを入れていた場合、PowerShellを起動してPythonと入力し、エンターキーを押すとインストールしたPythonが実行されます。

Windows版インストーラで入れたPythonのメリットとデメリット

メリットとして考えられるのはインストールが簡単なことです。
デメリットは複数のPythonをインストールしなければならない状況に対応しずらいことです。
PythonやDjango本体を含めたPythonのパッケージは、日々更新されていきますが、それぞれが特定のバージョンに依存しています。
あるアプリを開発した古いPythonの環境を残したまま、別のアプリを新しい環境で構築したい、ということはよくありますが、この方法だけでは対応できません。
また、既にシステムに古いPythonが入っていて、それに依存するソフトウェアがある場合、そのソフトウェアが動かなくなるなどの問題が発生する可能性もあります。
デメリットが大きいので、このPythonをそのまま使用するのは基本的におすすめの方法ではありません。

 

venv

venvはPython3.6に付属の仮想環境管理ツールです。
異なるパッケージのインストールされた仮想環境を複数作ることができます。

venvによる仮想環境の作成方法

Windows PowerShellを開いて、下記を実行します。

> python3 -m venv <仮想環境のパス>

簡単です。
一つ注意点は、venvを利用するには、上記の公式のインストーラでPythonをインストールしておかないといけないということです。
また、異なるバージョンのPythonを利用する方法は私はわかりませんでした…
(virtualenvという非常に普及している別のツールならできます)

参考
28.3. venv — 仮想環境の作成(Pythonの公式ドキュメント)
https://docs.python.jp/3/library/venv.html

venvで作った仮想環境の利用方法

まず、仮想環境をactivate(有効化)します。

> <仮想環境のパス>/bin/activate

この環境でインストールしたパッケージ等は、外の世界のPythonに影響を与えません。

仮想環境から出るにはdeactivateです。

deactivate

実行してみた例です。

 

pwshel

venvメリットとデメリット

venvによって作った仮想環境のPythonを利用するメリットは、インストールしたパッケージが、外の世界のPythonに影響を与えないことです。
開発するアプリケーションごとに仮想環境を作れば、お互いに影響を与えずに開発を進めることができます。
あるアプリで、あるパッケージのバージョンを上げたことで別のアプリが動かなくなる、という事態を防ぐことができます。

デメリットは、最初のPythonは、インストーラで導入する必要がある点です。

Anaconda

AnacondaはPython開発環境が簡単を作ることのできる便利ツール、と私は理解しています。
公式ページのWhat is Anaconda?では、「世界で一番人気のデータサイエンスの基盤」と書いてあるように、Anacondaには、データ解析に便利なツールがたくさん含まれています。
例えばPythonコードを埋め込めるノートアプリJupyter Notebookなどです。

Anaconda公式ページ
https://www.anaconda.com/

ただ、Anacondaはそれ以外にもいろいろな機能があり、仮想環境をつくることもできます。
また、pipの代わりになるパッケージマネージャとしての機能もあります。(pipを併用することも可能)

ただし、いろいろなパッケージを含んでいてとても容量が大きく、インストールも大変で、Djangoの開発環境として要らない機能も多いので、
私は最小構成版のminiconaをおすすめします。

minicondaのダウンロード

minicondaダウンロードページ
https://conda.io/miniconda.html

上記のページからインストーラをダウンロードしましょう。「64-bit (exe installer)」をクリックしてください。

miniconda

minidondaのインストール

ダウンロードしたインストーラをダブルクリックして起動し、基本的に「next」等を押していけば完了します。

miniconda

minidondaの使い方

インストールが完了したら、スタートメニューに「Anaconda Prompt」が追加されているはずです。

anconda prompot in start menu

クリックして起動しましょう。
基本的にこのAnaconda promptを使ってPythonを実行しましょう。

ここでのPythonの使い方は、venvと似ています。

Anacondaの仮想環境の作成方法

Anaconda promptで、仮想環境をつくりましょう

> conda create -n <仮想環境の名前>

途中で、「Proceed ([y]/n)?」と聞かれるので、yを押しましょう。
簡単です。

Anacondaの仮想環境の利用方法

Anaconda promptで、以下を実行すると、仮想環境に入ることができます。

> activate <仮想環境の名前>

仮想環境からでるにはdeactivateです。

> dactivate 

一通り実行してみました。anacondashell

Anacondaのメリットとデメリット

Anacondaのメリットは、venvのメリットがすべてに加えて、最初にPythonをインストールしなくてもよいところです!
あと、仮想環境ではpython自体のバージョンも変えることができます。
デメリットとしては、Djangoアプリケーション開発環境としてはいらないもの(Jupyter notebookなど)が入ってしまう点でしょうか。
ただ、全体としてはAnacondaが一番すっきりした環境だと感じます。

結論

というわけで、3つの環境を見た結果、Anaconda promptが一番のような気がします。

Author: 管理

tech-joho.infoの管理人です。いろいろな技術について勉強しています。