【Pythonアプリ開発入門】今すぐ始められる開発環境の構築

プログラミング初学者泣かせの環境構築

プログラミングを始めたり、アプリケーションを開発する際に一番最初のハードルになるのが環境構築です。
とはいっても、慣れてしまえばそれほど難しいものでもありません。

この記事ではPythonで非常に人気のあるWebフレームワークであるdjangoを始めるまでの環境構築を行います。
また、windowsの方でもmacの方でも環境構築が出来るようにやり方を紹介します。
多少やり方が異なるので、自分の環境に合う方で行ってください。

皆さんもこの記事を読んでアプリケーションを開発できる環境を整えましょう。

目次

Pythonをインストールする

djangoを始める前にまずはPythonをダウンロードをする必要があります。

今回はwindowsの方であればコマンドプロンプト、macの方であればターミナルを多用します。

コマンドプロンプトやターミナルって何?と思われる方は、以前まとめた記事があるのでぜひ読んで基本的な使い方をマスターしましょう。

【エンジニアが使う謎の黒い画面】コマンドプロンプトを使ってみよう

windowsの方はPythonの公式ページでダウンロードしましょう。

2019/05/29現在ではPython: 3.7.3が最新です。

Python ダウンロードページ

macの方はbrew自体が導入されていれば次の記述で簡単にインストールできます。

$ brew install python

brewを入れていない方は次のページで入れておきましょう。

Homebrew macOS用パッケージマネージャー

ここからdjangoプロジェクトを始める際に必要なパッケージをインストールしていきます。

仮想環境を構築する

今回は仮想環境を構築してその中にインストールしていきます。

今回に限らず、必要な言語やパッケージ、ライブラリは自分の環境に直接入れません。
その代わりに仮想環境を構築し、その中に必要なものを入れていきます。

例えば、複数人で開発を行う時はバージョンを統一する必要があります。
その際に自分の環境に直接入れてしまうと、バージョンを揃える際にいちいちアンインストールした後に入れ直す必要が出てきます。
仮想環境があればプロジェクトに応じてその環境内でバージョンを統一できるので、管理が非常に楽になります。

他にも様々な利点がありますが、今回はその程度の理解で十分です。

Pythonでは簡単に仮想環境を構築できるパッケージがあるのでそれを使用します。
まずはそれをインストールしましょう。

Pythonをインストールしていれば標準でpipというバージョン管理ツールを使えるようになります。
それを利用すると簡単にできます。

以下をコマンドプロンプトに記述します。

> pip install virtualenv
Collecting virtualenv
  Using cached https://files.pythonhosted.org/packages/ca/ee/8375c01412abe6ff462ec80970e6bb1c4308724d4366d7519627c98691ab/virtualenv-16.6.0-py2.py3-none-any.whl
Installing collected packages: virtualenv
Successfully installed virtualenv-16.6.0

これでインストール完了です。

virtualenvは仮想環境を作るためのライブラリです。
さっそくこれをつかって仮想環境を構築しましょう。

構築するためには次のように記述します。

> virtualenv 'EnvName'

好きなEnvの名前で仮想環境用のディレクトリが作成できます。

さっそく自分の好きなディレクトリを作り移動してからコマンドを打ちましょう。

>virtualenv venv
Using base prefix 'c:\\python37'
New python executable in C:\..\venv\Scripts\python.exe
Installing setuptools, pip, wheel...
done.

これでvenvという仮想環境用のディレクトリが作成されました。

仮想環境を立ち上げる準備はできましたが、まだ仮想環境が有効化されていません。

有効化するにはwindowsの方は次のようにコマンドラインを打ちましょう。

>venv\scripts\activate

(venv) >

macの方は次のように打ちましょう。

$ source venv/bin/activate
(venv) $ 

(EnvName)と表示されれば、ちゃんと仮想環境が有効化されています。

中に入っているパッケージはpip listと打つことで確認できます。

(venv) >pip list
Package    Version
---------- -------
pip        19.1.1
setuptools 41.0.1
wheel      0.33.4

PackageとそのVersionが確認できたと思います。

また、仮想環境から抜けるためにはdeactivateと記述します。

(venv) >deactivate

> 

これで仮想環境から抜けることができました。

djangoプロジェクトを始める

準備

それではここからさっそくdjangoプロジェクトを始めたいと思います。
まずはdjangoと必要関連のパッケージをインストールしましょう。

(venv) >pip install django
Collecting django
  Using cached https://files.pythonhosted.org/packages/b1/1d/2476110614367adfb079a9bc718621f9fc8351e9214e1750cae1832d4090/Django-2.2.1-py3-none-any.whl
Collecting sqlparse (from django)
  Using cached https://files.pythonhosted.org/packages/ef/53/900f7d2a54557c6a37886585a91336520e5539e3ae2423ff1102daf4f3a7/sqlparse-0.3.0-py2.py3-none-any.whl
Collecting pytz (from django)
  Using cached https://files.pythonhosted.org/packages/3d/73/fe30c2daaaa0713420d0382b16fbb761409f532c56bdcc514bf7b6262bb6/pytz-2019.1-py2.py3-none-any.whl
Installing collected packages: sqlparse, pytz, django
Successfully installed django-2.2.1 pytz-2019.1 sqlparse-0.3.0

これでsqlparse, pytz, djangoがインストールされました。
しっかりと入っているか先ほどと同様にpip listを使って確認してみましょう。

(venv) >pip list
Package    Version
---------- -------
Django     2.2.1
pip        19.1.1
pytz       2019.1
setuptools 41.0.1
sqlparse   0.3.0
wheel      0.33.4

確かに問題なくインストールできていることが確認できました。

djangoプロジェクトの立ち上げと開発用サーバーの起動

これでdjangoプロジェクトを始める準備が整いました。
今回は導入としてプロジェクトの立ち上げと開発用サーバーを起動させてみたいと思います。

まずは仮想環境を有効化した状態で、プロジェクトを入れるためのディレクトリを作りそこへ移動しましょう。
そこで次のようにコマンドを打ちます。

(venv) >django-admin startproject mysite

mysiteの部分は自分の好きなプロジェクト名で問題ありません。
上手くできていれば以下のディレクトリが出来ているはずです。

mysite/
    manage.py
    mysite/
        __init__.py
        settings.py
        urls.py
        wsgi.py

これでdjangoプロジェクトが立ち上がりました。

ここまでくれば開発用サーバーも簡単に起動できます。
作ったプロジェクトのディレクトリに入り、windowsの方は次のようにコマンドを打ちましょう。

(venv) >cd mysite

(venv) >py manage.py runserver
Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).

You have 17 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
May 29, 2019 - 17:26:21
Django version 2.2.1, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.

macの方は次のように打ちましょう。

$ cd mysite
$ python manage.py runserver

これで開発用サーバーが起動しています。
さっそく確認しましょう。

WebブラウザにURL欄にhttp://127.0.0.1:8000/と入力してください。
以下のような画面が表示されていれば問題なく起動しています。

djangoserverimage1

開発用サーバーを止めたい場合は、コマンドプロンプトでCtrl+Cと押せば止めることができます。

これでdjangoの基本的な環境構築は完了です。
ここから皆さんは、もう既にオリジナルのWebアプリケーションを開発することができます。

この記事では導入としてdjangoプロジェクトを立ち上げるところまで行いました。
もっと勉強したい方はdjangoの公式チュートリアルがあります。

djangoドキュメント
はじめての Django アプリ作成

このチュートリアルでは簡単な投票アプリケーションを作ります。
これはWeb開発の基本的な概念やdjangoの使い方を学ぶことができる大変良い教材です。

関心を持たれた方は皆さんもぜひ挑戦してみてください。

まとめ

今回はWebフレームワークであるdjangoのための環境構築を説明しました。
教えられればそれほど難しくはないのですが、自分一人で考えようとすると苦戦するかもしれません。

プログラミングをやってみて微妙だと思うのは仕方ありませんが、その前の環境構築で苦手意識を持ってしまうのは非常にもったいないです。

これを読んで環境構築に気負いせずにやってみようと思う方が増えれば、幸いです。

CodeShipの実践型Pythonカリキュラム

CodeShipの「WEBアプリ&データ処理コース」では、pythonとpythonのWEBアプリフレームワークであるflaskを学習、アプリ開発とデータ処理のスキルを身につけます。

pythonのカリキュラムでは開発環境の構築はもちろん、基礎的な言語の書き方から株価分析などデータ分析で注目されるpythonならではの実践的な課題を通して学習することができます。

また、flaskを使ったカリキュラムではアプリ開発学習の王道である「ToDoリスト」アプリやその他の開発課題を通してアプリ開発を学ぶことで、Djangoでのさらに大きな開発などにもつなげていきやすくなります。

pythonやDjango、Flaskに興味がある方はぜひお気軽にご相談ください。


おすすめ記事