解説記事の構成
No. | タイトル | |
---|---|---|
1 | PythonのWebアプリケーション(Django)を初心者にもわかりやすく解説(1)【環境構築編】 | ← |
2 | [PythonのWebアプリケーション(Django)を初心者にもわかりやすく解説(2)【プロジェクト作成編】] (http://qiita.com/carat_yoshizaki/items/926f702198bdfe8c6bd2) | |
3 | [PythonのWebアプリケーション(Django)を初心者にもわかりやすく解説(3)【アプリケーション作成・DB設定編】] (http://qiita.com/carat_yoshizaki/items/c9a5299b77b99ff07e4a) | |
4 | PythonのWebアプリケーション(Django)を初心者にもわかりやすく解説(4)【ルーティング設定・MTVデザインパターン入門編】 | |
5 | PythonのWebアプリケーション(Django)を初心者にもわかりやすく解説(5)【Django shellでDB操作入門編】 | |
6 | PythonのWebアプリケーション(Django)を初心者にもわかりやすく解説(6)【MTVデザインパターン完成編】 |
はじめに
この記事は、すでにPythonやRubyといったプログラミング言語に触れたことはあるが、Webアプリケーションは作ったことがない、もしくはDjangoには触れたことがないといった方を対象にしています。
Webアプリケーションと調べると、PHPやRubyがよく出てくるのですが、機械学習など複雑な数学的演算を行う場合にはやはりPythonが優れていると感じます。
以前、Ruby on Railsでアプリケーションを作成し、数学的な計算の部分はR言語で組み込むといったことをしたことがありますが、言語間を繋ぐパイプを構築するにも一手間必要でした。
そういった点で、色々な数学的なトリックを含ませたWebアプリケーションを作成する際にはPythonをオススメします。
ただ、PHPやRubyのWebアプリケーションと比較すると、PythonのWebアプリケーションは参考文献が不足しているように感じます。
PythonでのWebアプリケーション作成を最初から最後まで易しく、そして長くなりすぎない程度で解説していきます。
今回、WebアプリケーションのフレームワークにはDjangoを使用します。
Django以外にもBottleやFlaskなど軽量かつシンプルなフレームワークもあるのですが、Ruby on Railsのように、覚えれば実践的なアプリケーションでも耐えうるWebフレームワークであって欲しいため、Ruby on RailsのPython版(と思っている)のDjangoを選択しました。
Djangoの良さについてはこちらをご覧下さい。
【5分でわかる】Python、WEBフレームワーク「Django」とは
Djangoを使うことができれば、BottleやFlaskの習得も容易かと思われますが、恐らく逆は難しいかと思います。
初心者に易しいとは、解説が易しいと言うよりも、今後使う上で色々なことが吸収しやすいスタンダードを知るということだと思っていますので、そういう点でDjangoはPythonのWebアプリケーションのフレームワークとしてはうってつけではないでしょうか。
解説の部分はこちら側で極力易しくまとめていきますので、ご安心ください。
ご協力お願いします!
こちらの記事が参考になった方は、こちらの記事に『いいね』をしていただけると嬉しいです。
著者紹介
私は株式会社キカガク代表取締役の吉崎亮介と申します。
現在は『機械学習・人工知能 脱ブラックボックスセミナー』や『機械学習のオンライン家庭教師』を運営しております。
略歴
所属 | 学科・部署 | 研究内容 | 賞罰 |
---|---|---|---|
舞鶴高専 | 電子制御工学科 | 画像処理(AR)を研究 | |
舞鶴高専 | 電気・制御システム工学専攻 | ロボット工学・システム制御・最適化を研究 | |
京都大学大学院 | 情報学研究科(加納研) | 製造業に向けた機械学習の応用研究 | ADCHEM2016最優秀論文賞、化学工学会技術賞 |
株式会社SHIFT | 社長室 | 人工知能によるソフトウェアテスト自動化の研究 | CEDEC2016登壇 |
株式会社Carat | 取締役兼COO | 最適な旅程提案アプリ(自然言語処理・最適化) | |
株式会社キカガク | 代表取締役社長 | 機械学習・人工知能セミナーやオンライン家庭教師 |
株式会社キカガク
機械学習や人工知能の教育サービスを提供
・機械学習のオンライン家庭教師
※ オンライン家庭教師のカリキュラムはこちら
フォローお待ちしております
ビジネス目線の機械学習・人工知能の情報やオススメの参考書について発信しています。
代表取締役社長 吉崎 亮介
Twitter:@yoshizaki_kkgk
Facebook:@ryosuke.yoshizaki
Blog:キカガク代表のブログ
開発環境
- OS: Mac OS Sierra (10.12)
- Python 3.5.2
Macの環境を前提として話を進めていきます。
Pythonのバージョン確認は以下の通りです。
$ python3 --version
Python 3.5.2
マイナーバージョンによる大きな差は無いと思いますが、少なくともPython3系にしておくようにしてください。
仮想環境の構築
Webアプリケーションごとにシステム側の設定があり、ひとつのPCに色々なWebアプリケーションの設定を行うと、他のアプリケーションの設定に影響を受ける場合があります。
そこで、Pythonでは仮想環境(Virtual Environment)を導入し、各アプリケーション毎に独立した設定を持つようにしています。
この辺りは、Ruby on Railsを知っている方であれば、自然な感覚だと思います。
ディレクトリの作成
まず、今のディレクトリ(Windowsでいうフォルダ)にWebアプリケーション用のフォルダを作成します。
$ mkdir sample_app
$ cd sample_app
このディレクトリ内に myvenv
というvirtualenv(仮想環境)を作成します。
$ python3 -m venv myvenv
このコマンドが通ると、ディレクトリ内に myenv
という名前のディレクトリが作成されていると思います。
$ ls
myvenv
このようなディレクトリ構成ができているでしょうか。
ちなみに、このディレクトリ構成を出力するには tree
というコマンドを使用しており、Homebrew経由で簡単にインストールすることができます。
$ brew install tree
treeにより、ディレクトリ内容を表示します。
treeのオプションについては、Qiita:treeコマンドをご覧下さい。
$ tree -L 1 myvenv
myvenv
├── bin
├── include
├── lib
└── pyvenv.cfg
仮想環境の設定
仮想環境の設定を始める前に、作成した仮想環境のディレクトリに移動しておきましょう。
$ cd myenv
$ ls
bin include lib pyvenv.cfg
今回は、Django Girlsのチュートリアルに合わせて、バージョン1.8を使用することにします。
$ pip3 install django==1.8
Collecting django==1.8
Downloading Django-1.8-py2.py3-none-any.whl (6.2MB)
100% |████████████████████████████████| 6.2MB 111kB/s
Installing collected packages: django
Successfully uninstalled Django-1.9.1
Successfully installed django-1.8
以上で、仮想環境の設定が完了しました。
非常に簡単ですね。
次回の解説記事
[PythonのWebアプリケーション(Django)を初心者にもわかりやすく解説(2)【プロジェクト作成編】] (http://qiita.com/carat_yoshizaki/items/926f702198bdfe8c6bd2)
参考文献
おわりに
機械学習を学ばれる際に、『独学ではあの難解な数式やプログラミングがやっぱり難しい』と感じた方は、ぜひ弊社のセミナーもしくはオンライン家庭教師でお待ちしております。
・機械学習のオンライン家庭教師
※ オンライン家庭教師のカリキュラムはこちら
フォローお待ちしております
ビジネス目線の機械学習・人工知能の情報やオススメの参考書について発信しています。
代表取締役社長 吉崎 亮介
Twitter:@yoshizaki_kkgk
Facebook:@ryosuke.yoshizaki
Blog:キカガク代表のブログ
最後までお読みいただき、ありがとうございました。