WindowsにPythonとDjangoを入れるお話

WindowsPythonDjangoをインストールする方法は探せばいくらでも出てきますが,備忘録的な意味(兼まとめる用事があったので)のために書きます.

ちなみにDjangoの公式サイトでも方法がまとめられているので,これを見て出来る人はそれが1番いいと思います.

Windows での Django のインストール方法 | Django documentation | Django

以下はこれをやる際の個人的補足等々です.

今回対象とする環境

Pythonインストール

DjangoPythonで実装されたWebアプリケーションフレームワークなので動かす人はまずPythonのインストールから始める必要があります.

以下のサイトからPythonインストーラーをダウンロードしてください.

www.python.org

[Downloads]→[Windows]を選び,Python 3.5.2の[Download Windows x86-64 web-based installer]をクリックすることでダウンロード出来ます.

また,今回は関係ないですがもしもOSが32bitの場合は[Download Windows x86 web-based installer]を選びましょう.

ダウンロードが終了してきたファイルを実行するとインストールが始まり,以下の画面が表示されます.

f:id:zenmaibane:20160923191918p:plain

[Add Python 3.5 to PATH]にチェックを入れることで環境変数設定を自動でやってくれます.もしも自分でやる場合はこのチェックを外しましょう.この記事ではチェックを入れた状態で話を進めます.

インストールを続ける場合は[Install Now]を押しましょう.もしもインストールされるパス等が気に入らなかったら[Customize installation]を押して自分で変更してください.この記事では[Install Now]を選択することとします.

[Install Now]を押すとインストールが始まります.終わるまで待ちましょう.

インストールが終了したらPythonが入っていることを確認しましょう.コマンドプロンプトを立ち上げ,python --versionコマンドを打ってみましょう.下記画像のようにPython 3.5.2と表示されれば成功です.

コマンドプロンプトの立ち上げ方がわからない人は[Win + R] を押した後にcmdと入力しEnterを押すといいでしょう.

f:id:zenmaibane:20160923192858p:plain

もしもこのような表示が出なかった場合は環境変数の設定かインストールが失敗している可能性があります.

virtualenv と virtualenvwrapper のインストール

Pythonで開発をする際,何かしらのフレームワークであったりライブラリが必要になることが多々あります.しかし,開発プロジェクト毎に「このライブラリは必要」,「このライブラリは必要ではない」など求められる環境が変わってしまいます.これを解決するのがvirtualenvであり,プロジェクト毎に使用するライブラリを分離する事が出来ます.個々のプロジェクト毎に環境を作成するのは必須ではありませんが,作成することで今後デプロイ等々の場面で無駄な時間消費するのを防いでくれます.

さて,上記で「何かしらのフレームワークであったりライブラリが必要になることが多々あります」と述べましたが,これのインストール方法についてです.Pythonフレームワーク・ライブラリをインストールする際にはpipと呼ばれるパッケージマネージャを使用します.pipはPython3.4以降ではデフォルトで導入されています.*1 そのため今回扱っているPythonは3.5.2では既に導入済みです.

試しにpipが入っているかどうかを確認してみましょう.確認するコマンドはpip --version です.(別に–versionは書かなくてもいいですがわかりやすくするために今回は指定してます)

f:id:zenmaibane:20160923204052p:plain

上記のような画面になれば成功です.バージョンやパス(from以降の文章)は環境によって異なってくるのでその差は気にしなくていいです.

pipが入っていることが確認出来たので先程述べたvirtualenv と virtualenvwrapperとインストールしてみましょう.使用するコマンドはpip install virtualenvwrapper-winです.virtualenvwrapper-winをインストールすることでWindows用のvirtualenv と virtualenvwrapperがインストールされます.ざっくり説明するならvirtualenvが環境を作成するための機能,virtualenvwrapperがそれを使いやすくするためのコマンドを提供するものです.

f:id:zenmaibane:20160923203621p:plain

上記画面のようにインストールされればOKです.もしも入ってるか確認したい場合はvirtualenv --version等を打ってみるといいでしょう.

さて,上記の画像で黄色の文字で注意されている文があります(人によってはこの文は表示されていないでしょう).これはpipのバージョンが最新でない場合に表示されます.pipはデフォルトで導入されていると述べましたが最新版であることは保証されていないためバージョンが古い場合はこのように注意されることがあります.この場合は何か特別な理由がなければ最新版にアップグレードしましょう.使用するコマンドは黄色い文に書いてあるとおりpython -m pip install --upgrade pipです.

では早速virtualenvの機能を使ってみましょう.まず適当な場所(自分が好きな場所でいいです)にtestという名のフォルダを作成しましょう.本記事ではデスクトップに作ることにします.作成したらそのフォルダまでコマンドプロンプトで移動してください.この記事でいうなら現在下記の画像の状態です.

f:id:zenmaibane:20160923205718p:plain

ここでmkvirtualenv <envname>というコマンドを打ちましょう.この<envname>に入力した文字列がこの作成した環境の名前になります.この記事ではmyprojectと入力したことにします.以下の画像がこれを終えた後の状態です.

f:id:zenmaibane:20160925170800p:plain

mkvirtualenv <envname>をすることで新しくPythonの環境(この言い方もちょっと変な気がしますが)を作成することが出来ます.パスの左の括弧内に今適用している環境名が表示されます.

今回の作業とは関係ないですが以下にvirtualenvwrapperの基本的なコマンドを少しだけ紹介します.

  • lsvirtualenv

既に作成してある作成した環境の一覧を表示します.

  • workon <envname>

指定した名前の(既にある)環境を適用(アクティベート)します.

  • mkvirtualenv <envname>

今回使ったコマンドです.新しく環境を作成します.また作成した後にアクティベートもされます.

  • deactivate

今アクティベートしている環境から抜け出します.

  • rmvirtualenv <envname>

指定した環境を削除します.…..なのですがファイルが残ってしまいフォルダが削除されず,もう1度同じ名前で作成するときなどに存在している扱いになることがあります.その場合は直接環境のフォルダを消してください. ちなみにですが,ここからわかるようにこのコマンドを使わずに自分で環境のフォルダを消すことでも削除出来ます.

Djangoのインストール

単純にpip install Djangoで最新版のDjangoが入ります.また,pip install Django==<version name>で指定したDjangoのバージョンが入ります.例えば1.10.1を入れたいならpip install Django==1.10.1です.

Djangoを入れた後はせっかくなのでvirtualenvで作った環境と特に作ってない普段(グローバル)の環境との差を見てみましょう.

まずはmyprojectにアクティベートした状態でpip listを打ってみましょう.

f:id:zenmaibane:20160925181923p:plain

次にmyprojectから抜け出し,グローバルな状態でのpip listを確認してみます.

f:id:zenmaibane:20160925182014p:plain

見比べてわかるようにmyproject下にはDjangoが入っていますがグローバルな環境にはDjangoが入っていません.その他の差からもきちんと環境が分離されていることが確認出来ます.