SlideShare a Scribd company logo
PyLadies Tokyo x Start Python Club
@cz3325
Django
x
Jupyter Notebook
2019.03.13 Wed.
Agenda
お前、誰よ
Djangoとは
Jupyter Notebookとは
Django × Jupyter
01/51
お前、誰よ
あだ名: こんの @cz3325
職業:  フロントエンドエンジニア(4年目)
2017.11 PyLadies 秋合宿@秩父
2018.04 PyLadies Python入学式
2018.09 PyCon 2018
2018.10 PyCon Hiroshima mini 2018
2018.10 PyLadies 4周年パーティ
2018.11 PyLadies 沖縄秋合宿
02/51
 Python スタートブック(旧)
03/51
 Python スタートブック(新)
04/51
では、本題に入りましょう。
05/51
Django
06/51
Pythonを使用したWebアプリケーション
フレームワークです。
素早く、簡単にウェブサイトを開発するのに役立
つコンポーネントの一式が含まれています。
Djangoとは
引用元:https://tutorial.djangogirls.org/ja/django/
07/51
Djangoとは
去年行われた
PyCon JP 2018
トークセッションの中
タイトル検索だけで
6件見つかりました。
08/51
Djangoインストール後
プロジェクト新規作成
$ django-admin startproject demo
$ cd demo
$ python3 manage.py runserver 8080
(※port指定しなくても大丈夫)
09/51
Djangoプロジェクト
新規作成後の初期画面
http://127.0.0.1:8080/
10/51
アプリケーション
新規作成
$ python3 manage.py startapp myapp
./myapp/admin.py
from django.contrib import admin
from .models import Post
admin.site.register(Post)
11/51
Superuser admin
ログインページ
http://127.0.0.1:8080/admin
12/51
Superuser admin
コマンドで作れる
$ python3 manage.py createsuperuser
ユーザー名: admin
メールアドレス: admin@admin.com
Password:
Password (again):
13/51
Superuser admin
ログインページ
http://127.0.0.1:8080/admin
admin
●●●●●
14/51
Superuser admin
ログインページ
簡単に作れた!
http://127.0.0.1:8080/admin
15/51
Jupyter Notebook
16/51
ノートブックと呼ばれる形式で作成した プログ
ラムを実行し、実行結果を記録しながら、データ
の分析作業を進めるためのツールです。
プログラムとその実行結果やその際のメモを簡
単に作成、確認することができます。
Jupyter Notebookとは
引用元:https://pythondatascience.plavox.info/
17/51
Jupyter Notebook
ファーストコンタクト
PyLadies Tokyo Meetup #27
ではじめて学びました。
18/51
Jupyter Notebook
マークダウン
19/51
Jupyter Notebook
Pythonを実行する
20/51
Django
x
Jupyter Notebook
21/51
なぜJupyter NotebookとDjangoの
組み合わせを試そうって思った?
Python x Web Application Framework -> Django
Python x Data Science Tools -> Jupyter Notobook
1つのwebサイトとして利用したい
Django x Jupyter Notebook
22/51
Django
23/51
Django
24/51
Django
$ python3 manage.py runserver
http://127.0.0.1:8080/admin
25/51
Jupyter Notebook
26/51
Jupyter Notebook
27/51
Jupyter Notebook
$ jupyter notebook
http://localhost:8888/notebook/
28/51
WEBシステムの機能を持つJupyter Notebookと
Djangoと組み合わせってどういうこと?
29/51
Django
Jupyter Notebook
WEBシステムの機能を持つJupyter Notebookと
Djangoと組み合わせってどういうこと?
やりたいこと
30/51
コマンド:
$ pip install django-extensions
setting.pyファイル:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'app',
'django_extensions', # この行を追加
)
31/51
django-extensionsってなに?
32/51
django-extensionsってなに?
DjangoエクステンションはDjangoフレームワーク用の
カスタムエクステンションのコレクションです。
これらには、管理コマンド、追加のデータベースフィー
ルド、管理拡張機能などがあります。
33/51
今回は
shell_plus
使います
34/51
でも
shell_plus
ってなに?
35/51
shell_plusってなに?
36/51
shell_plusってなに?
アプリデータベースモデルと
ユーザー定義クラスのサブクラスを
自動ロードするDjangoシェル。
37/51
shell_plusってなに?
IPython, bpython, ptpythonを指定でき、
モデルの自動インポートを可能にする。
38/51
$ python3 manage.py shell_plus
39/51
(実際のJupyter Notobook)
40/51
想像と少し違ってた
ブラウザ上じゃなかった
Django
Jupyter Notebook
41/51
実際試してみて…
42/51
実際試してみて…
今回の結果はコマンドラインで
「Django x Jupyter Notebook」を実現できたが、予想して
たブラウザ上での実現できなかった。
43/51
実際試してみて…
今回の結果はコマンドラインで
「Django x Jupyter Notebook」を実現できたが、予想して
たブラウザ上での実現できなかった。
ただ、もし、Jupyter Notebookでコンパイルした
結果をDjangoに渡して表示することできたら、
なにかできそう。
44/51
こういうのできたら…
Django
Jupyter Notebook Template
結果はこうなりまし
た。
45/51
まだ試してないもの
46/51
$ python3 manage.py shell_plus --help
47/51
Don’t open the notebook in
a browser after startup.
48/51
Don’t open the notebook in
a browser after startup.
ブラウザで開ける
49/51
ご清聴ありがとうございました 
50/51
参考資料
https://tutorial.djangogirls.org/
https://docs.djangoproject.com/ja/2.1/
http://tabilike.hatenablog.com/entry/2017/10/10/185857
https://sleepless-se.net/2018/05/17/django%E3%81%A7ipython-jupyter-notebook%E3%82%92%E4%BD%
BF%E3%81%86%E6%96%B9%E6%B3%95/
https://django-extensions.readthedocs.io/en/latest/
51/51

More Related Content

What's hot

過去2回の登壇内容からのPython×ドローンの進化アップデート内容と今後について展望
過去2回の登壇内容からのPython×ドローンの進化アップデート内容と今後について展望過去2回の登壇内容からのPython×ドローンの進化アップデート内容と今後について展望
過去2回の登壇内容からのPython×ドローンの進化アップデート内容と今後について展望
Lina Katayose
 
スクレイピングとPython
スクレイピングとPythonスクレイピングとPython
スクレイピングとPython
Hironori Sekine
 
GBDC 勉強会 #1 Python を用いたツール作成工数の最小化
GBDC 勉強会 #1 Python を用いたツール作成工数の最小化GBDC 勉強会 #1 Python を用いたツール作成工数の最小化
GBDC 勉強会 #1 Python を用いたツール作成工数の最小化
Yutaka Kato
 
言語処理するのに Python でいいの? #PyDataTokyo
言語処理するのに Python でいいの? #PyDataTokyo言語処理するのに Python でいいの? #PyDataTokyo
言語処理するのに Python でいいの? #PyDataTokyoShuyo Nakatani
 
ちょっと真面目にPython&Django・基礎編
ちょっと真面目にPython&Django・基礎編ちょっと真面目にPython&Django・基礎編
ちょっと真面目にPython&Django・基礎編
OMEGA (@equal_001)
 
Python×ドローンについて過去のPyConJP登壇から今までの進化。
Python×ドローンについて過去のPyConJP登壇から今までの進化。Python×ドローンについて過去のPyConJP登壇から今までの進化。
Python×ドローンについて過去のPyConJP登壇から今までの進化。
Lina Katayose
 
PyLadies Tokyo - 初心者向けPython体験ワークショップ開催の裏側
PyLadies Tokyo - 初心者向けPython体験ワークショップ開催の裏側PyLadies Tokyo - 初心者向けPython体験ワークショップ開催の裏側
PyLadies Tokyo - 初心者向けPython体験ワークショップ開催の裏側
Katayanagi Nobuko
 
Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )
Ai Makabi
 
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Preferred Networks
 
新人教育と(Javaと)Python
新人教育と(Javaと)Python新人教育と(Javaと)Python
新人教育と(Javaと)Python
7pairs
 
S12 t1 python学習奮闘記#5
S12 t1 python学習奮闘記#5S12 t1 python学習奮闘記#5
S12 t1 python学習奮闘記#5
Takeshi Akutsu
 
Pynyumon03 LT
Pynyumon03 LTPynyumon03 LT
Pynyumon03 LT
drillan
 
stapy#23 LT
stapy#23 LTstapy#23 LT
stapy#23 LT
NaoY-2501
 
Introduction of kabepy
Introduction of kabepyIntroduction of kabepy
Introduction of kabepyKenjiro Kosaka
 
Python入門 コードリーディング - PyConJP2016
Python入門 コードリーディング - PyConJP2016Python入門 コードリーディング - PyConJP2016
Python入門 コードリーディング - PyConJP2016
Shinya Okano
 
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
Kei IWASAKI
 
Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!
Kir Chou
 
Python と型ヒント (Type Hints)
Python と型ヒント (Type Hints)Python と型ヒント (Type Hints)
Python と型ヒント (Type Hints)
Tetsuya Morimoto
 
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
Katsuhiro Morishita
 

What's hot (20)

過去2回の登壇内容からのPython×ドローンの進化アップデート内容と今後について展望
過去2回の登壇内容からのPython×ドローンの進化アップデート内容と今後について展望過去2回の登壇内容からのPython×ドローンの進化アップデート内容と今後について展望
過去2回の登壇内容からのPython×ドローンの進化アップデート内容と今後について展望
 
スクレイピングとPython
スクレイピングとPythonスクレイピングとPython
スクレイピングとPython
 
GBDC 勉強会 #1 Python を用いたツール作成工数の最小化
GBDC 勉強会 #1 Python を用いたツール作成工数の最小化GBDC 勉強会 #1 Python を用いたツール作成工数の最小化
GBDC 勉強会 #1 Python を用いたツール作成工数の最小化
 
言語処理するのに Python でいいの? #PyDataTokyo
言語処理するのに Python でいいの? #PyDataTokyo言語処理するのに Python でいいの? #PyDataTokyo
言語処理するのに Python でいいの? #PyDataTokyo
 
ちょっと真面目にPython&Django・基礎編
ちょっと真面目にPython&Django・基礎編ちょっと真面目にPython&Django・基礎編
ちょっと真面目にPython&Django・基礎編
 
Python×ドローンについて過去のPyConJP登壇から今までの進化。
Python×ドローンについて過去のPyConJP登壇から今までの進化。Python×ドローンについて過去のPyConJP登壇から今までの進化。
Python×ドローンについて過去のPyConJP登壇から今までの進化。
 
PyLadies Tokyo - 初心者向けPython体験ワークショップ開催の裏側
PyLadies Tokyo - 初心者向けPython体験ワークショップ開催の裏側PyLadies Tokyo - 初心者向けPython体験ワークショップ開催の裏側
PyLadies Tokyo - 初心者向けPython体験ワークショップ開催の裏側
 
Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )
 
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
 
S02 t0 get_started
S02 t0 get_startedS02 t0 get_started
S02 t0 get_started
 
新人教育と(Javaと)Python
新人教育と(Javaと)Python新人教育と(Javaと)Python
新人教育と(Javaと)Python
 
S12 t1 python学習奮闘記#5
S12 t1 python学習奮闘記#5S12 t1 python学習奮闘記#5
S12 t1 python学習奮闘記#5
 
Pynyumon03 LT
Pynyumon03 LTPynyumon03 LT
Pynyumon03 LT
 
stapy#23 LT
stapy#23 LTstapy#23 LT
stapy#23 LT
 
Introduction of kabepy
Introduction of kabepyIntroduction of kabepy
Introduction of kabepy
 
Python入門 コードリーディング - PyConJP2016
Python入門 コードリーディング - PyConJP2016Python入門 コードリーディング - PyConJP2016
Python入門 コードリーディング - PyConJP2016
 
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
 
Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!
 
Python と型ヒント (Type Hints)
Python と型ヒント (Type Hints)Python と型ヒント (Type Hints)
Python と型ヒント (Type Hints)
 
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
 

Similar to みんなのPython勉強会#43 Pyladies x Stapy ジョイントミートアップ #2

Python入門者の集い #6 Lightning Talk
Python入門者の集い #6 Lightning Talk Python入門者の集い #6 Lightning Talk
Python入門者の集い #6 Lightning Talk
Katayanagi Nobuko
 
211120 他人の書いたPythonスクリプトをステップ実行で理解する
211120 他人の書いたPythonスクリプトをステップ実行で理解する211120 他人の書いたPythonスクリプトをステップ実行で理解する
211120 他人の書いたPythonスクリプトをステップ実行で理解する
Takuya Nishimoto
 
Pythonコミュニティ-紹介 @ LOCAL 2015
Pythonコミュニティ-紹介 @ LOCAL 2015Pythonコミュニティ-紹介 @ LOCAL 2015
Pythonコミュニティ-紹介 @ LOCAL 2015
Takayuki Shimizukawa
 
ゼロから学ぶPython勉強会
ゼロから学ぶPython勉強会ゼロから学ぶPython勉強会
ゼロから学ぶPython勉強会
sekikazu
 
[DojoCon Japan 2018]自分にできる貢献のしかたを見つけよう by CoderDojo光
[DojoCon Japan 2018]自分にできる貢献のしかたを見つけよう by CoderDojo光[DojoCon Japan 2018]自分にできる貢献のしかたを見つけよう by CoderDojo光
[DojoCon Japan 2018]自分にできる貢献のしかたを見つけよう by CoderDojo光
Hiroyuki Ishikawa
 
(python)勉強会のすすめ
(python)勉強会のすすめ(python)勉強会のすすめ
(python)勉強会のすすめ
Kioto Hirahara
 
プログラミング学習とScratch raspi python
プログラミング学習とScratch raspi pythonプログラミング学習とScratch raspi python
プログラミング学習とScratch raspi python
Yoshitaka Shiono
 
Django で始める PyCharm 入門
Django で始める PyCharm 入門Django で始める PyCharm 入門
Django で始める PyCharm 入門
kashew_nuts
 
Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編- Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編-
Hironori Sekine
 
Python エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjpPython エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjpTakeshi Komiya
 
Pythonでpdfをいじってみる
PythonでpdfをいじってみるPythonでpdfをいじってみる
Pythonでpdfをいじってみる
株式会社 システムヨシイ
 
[OSC2018広島]自分にできる貢献のしかたを見つけよう(OSC2018広島Ver)
[OSC2018広島]自分にできる貢献のしかたを見つけよう(OSC2018広島Ver)[OSC2018広島]自分にできる貢献のしかたを見つけよう(OSC2018広島Ver)
[OSC2018広島]自分にできる貢献のしかたを見つけよう(OSC2018広島Ver)
Hiroyuki Ishikawa
 
Clojureの世界と実際のWeb開発
Clojureの世界と実際のWeb開発Clojureの世界と実際のWeb開発
Clojureの世界と実際のWeb開発
Tsutomu Yano
 
S18 t0 introduction
S18 t0 introductionS18 t0 introduction
S18 t0 introduction
Takeshi Akutsu
 
S28 t0 introduction
S28 t0 introductionS28 t0 introduction
S28 t0 introduction
Takeshi Akutsu
 
PyPy 紹介
PyPy 紹介PyPy 紹介
PyPy 紹介
shoma h
 
本気でPythonで宛名書きした話
本気でPythonで宛名書きした話本気でPythonで宛名書きした話
本気でPythonで宛名書きした話
Satoshi Yamada
 
LibreOfficeとモバイルデバイス
LibreOfficeとモバイルデバイスLibreOfficeとモバイルデバイス
LibreOfficeとモバイルデバイス
Masataka Kondo
 
Introduction
IntroductionIntroduction
Introduction
Takeshi Akutsu
 
サードパーティパッケージの歩き方
サードパーティパッケージの歩き方サードパーティパッケージの歩き方
サードパーティパッケージの歩き方
Takesxi Sximada
 

Similar to みんなのPython勉強会#43 Pyladies x Stapy ジョイントミートアップ #2 (20)

Python入門者の集い #6 Lightning Talk
Python入門者の集い #6 Lightning Talk Python入門者の集い #6 Lightning Talk
Python入門者の集い #6 Lightning Talk
 
211120 他人の書いたPythonスクリプトをステップ実行で理解する
211120 他人の書いたPythonスクリプトをステップ実行で理解する211120 他人の書いたPythonスクリプトをステップ実行で理解する
211120 他人の書いたPythonスクリプトをステップ実行で理解する
 
Pythonコミュニティ-紹介 @ LOCAL 2015
Pythonコミュニティ-紹介 @ LOCAL 2015Pythonコミュニティ-紹介 @ LOCAL 2015
Pythonコミュニティ-紹介 @ LOCAL 2015
 
ゼロから学ぶPython勉強会
ゼロから学ぶPython勉強会ゼロから学ぶPython勉強会
ゼロから学ぶPython勉強会
 
[DojoCon Japan 2018]自分にできる貢献のしかたを見つけよう by CoderDojo光
[DojoCon Japan 2018]自分にできる貢献のしかたを見つけよう by CoderDojo光[DojoCon Japan 2018]自分にできる貢献のしかたを見つけよう by CoderDojo光
[DojoCon Japan 2018]自分にできる貢献のしかたを見つけよう by CoderDojo光
 
(python)勉強会のすすめ
(python)勉強会のすすめ(python)勉強会のすすめ
(python)勉強会のすすめ
 
プログラミング学習とScratch raspi python
プログラミング学習とScratch raspi pythonプログラミング学習とScratch raspi python
プログラミング学習とScratch raspi python
 
Django で始める PyCharm 入門
Django で始める PyCharm 入門Django で始める PyCharm 入門
Django で始める PyCharm 入門
 
Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編- Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編-
 
Python エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjpPython エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjp
 
Pythonでpdfをいじってみる
PythonでpdfをいじってみるPythonでpdfをいじってみる
Pythonでpdfをいじってみる
 
[OSC2018広島]自分にできる貢献のしかたを見つけよう(OSC2018広島Ver)
[OSC2018広島]自分にできる貢献のしかたを見つけよう(OSC2018広島Ver)[OSC2018広島]自分にできる貢献のしかたを見つけよう(OSC2018広島Ver)
[OSC2018広島]自分にできる貢献のしかたを見つけよう(OSC2018広島Ver)
 
Clojureの世界と実際のWeb開発
Clojureの世界と実際のWeb開発Clojureの世界と実際のWeb開発
Clojureの世界と実際のWeb開発
 
S18 t0 introduction
S18 t0 introductionS18 t0 introduction
S18 t0 introduction
 
S28 t0 introduction
S28 t0 introductionS28 t0 introduction
S28 t0 introduction
 
PyPy 紹介
PyPy 紹介PyPy 紹介
PyPy 紹介
 
本気でPythonで宛名書きした話
本気でPythonで宛名書きした話本気でPythonで宛名書きした話
本気でPythonで宛名書きした話
 
LibreOfficeとモバイルデバイス
LibreOfficeとモバイルデバイスLibreOfficeとモバイルデバイス
LibreOfficeとモバイルデバイス
 
Introduction
IntroductionIntroduction
Introduction
 
サードパーティパッケージの歩き方
サードパーティパッケージの歩き方サードパーティパッケージの歩き方
サードパーティパッケージの歩き方
 

みんなのPython勉強会#43 Pyladies x Stapy ジョイントミートアップ #2