Submit Search
ちょっと真面目にPython&Django・基礎編
Download as PPTX, PDF
•
14 likes
•
3,877 views
OMEGA (@equal_001)
PyconCon mini Sappopro 2015 で発表したスライド
Engineering
Read more
1 of 18
Download now
Downloaded 27 times
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
More Related Content
PPTX
PyPro2の読みどころ紹介:Python開発の過去と現在
Takayuki Shimizukawa
PDF
新人教育と(Javaと)Python
7pairs
PDF
Pythonによるwebアプリケーション入門 - Django編-
Hironori Sekine
PDF
How to create PyCon JP
Takanori Suzuki
PDF
S02 t0 get_started
Takeshi Akutsu
PDF
The tale of I and python / Python とのはなし
Takanori Suzuki
PDF
S12 t1 python学習奮闘記#5
Takeshi Akutsu
PPTX
オリエンテーション
Takeshi Akutsu
PyPro2の読みどころ紹介:Python開発の過去と現在
Takayuki Shimizukawa
新人教育と(Javaと)Python
7pairs
Pythonによるwebアプリケーション入門 - Django編-
Hironori Sekine
How to create PyCon JP
Takanori Suzuki
S02 t0 get_started
Takeshi Akutsu
The tale of I and python / Python とのはなし
Takanori Suzuki
S12 t1 python学習奮闘記#5
Takeshi Akutsu
オリエンテーション
Takeshi Akutsu
What's hot
(20)
PDF
PyLadies Tokyo - 初心者向けPython体験ワークショップ開催の裏側
Katayanagi Nobuko
PDF
Python札幌 2012/06/17
Shinya Okano
PPTX
Pythonのプロファイリング
ysakaguchi
PDF
S01 t1 tsuji_pylearn_ut_01
Takeshi Akutsu
PDF
Python for Beginners ( #PyLadiesKyoto Meetup )
Ai Makabi
PDF
S06 t0 orientation
Takeshi Akutsu
PDF
エキスパートPythonプログラミング改訂3版の読みどころ
Takayuki Shimizukawa
PDF
S06 t1 python学習奮闘記#4
Takeshi Akutsu
PDF
S01 t0 orientation
Takeshi Akutsu
PPTX
Bottle使ってPython学習一緒にはじめませんか?
Tatsuya Shinozuka
PDF
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Preferred Networks
PPTX
Python エンジニアの作り方 2011.08 #pyconjp
Takeshi Komiya
PPTX
独学プログラマーのその後
Takayuki Shimizukawa
PPTX
Django learning
Yusuke Muraoka
PPTX
Python入門者の集い #6 Lightning Talk
Katayanagi Nobuko
PDF
S05_T0_orientation
Takeshi Akutsu
PDF
Introduction
Takeshi Akutsu
PDF
Effective Python 第2版をオンライン読書会で。
KyutatsuNishiura
PDF
RubyエンジニアがPythonをdisるためにPythonを勉強してみた
Yusuke Kon
PDF
S14 t0 introduction
Takeshi Akutsu
PyLadies Tokyo - 初心者向けPython体験ワークショップ開催の裏側
Katayanagi Nobuko
Python札幌 2012/06/17
Shinya Okano
Pythonのプロファイリング
ysakaguchi
S01 t1 tsuji_pylearn_ut_01
Takeshi Akutsu
Python for Beginners ( #PyLadiesKyoto Meetup )
Ai Makabi
S06 t0 orientation
Takeshi Akutsu
エキスパートPythonプログラミング改訂3版の読みどころ
Takayuki Shimizukawa
S06 t1 python学習奮闘記#4
Takeshi Akutsu
S01 t0 orientation
Takeshi Akutsu
Bottle使ってPython学習一緒にはじめませんか?
Tatsuya Shinozuka
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Preferred Networks
Python エンジニアの作り方 2011.08 #pyconjp
Takeshi Komiya
独学プログラマーのその後
Takayuki Shimizukawa
Django learning
Yusuke Muraoka
Python入門者の集い #6 Lightning Talk
Katayanagi Nobuko
S05_T0_orientation
Takeshi Akutsu
Introduction
Takeshi Akutsu
Effective Python 第2版をオンライン読書会で。
KyutatsuNishiura
RubyエンジニアがPythonをdisるためにPythonを勉強してみた
Yusuke Kon
S14 t0 introduction
Takeshi Akutsu
Ad
ちょっと真面目にPython&Django・基礎編
1.
ちょっと真面目に Python&Django・基礎編 OMEGA (@equal_001)
2.
お前誰よ _人人人人人人人人人人人人_ > みんなバイク乗ろう! <  ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y ̄ 2015/9/30自己紹介 2 •
OMEGA (@equal_001) • 北海道のハワイ出身 • 少しだけLOCAL学生部やっ てました • のプログラマです
3.
青春時代の作品 2015/9/30青春時代の作品 3
4.
はじめに • pythonって何ぞやという初歩の初歩から ざっくり話します • 知ってる人は軽く聞き流しつつお昼ご飯の こととか考えててください(ご飯だいじ) 2015/9/30目次 4
5.
目次 • Pythonについて – パラダイム –
スコープ – self – まとめ • Django – MVC – まとめ • 知っておきたいツール・基礎編 2015/9/30目次 5
6.
Python:パラダイム Python:パラダイム 6 2015/9/30 • マルチパラダイムプログラミ ング言語 • 文法はABCの影響が強い –
インデント、コロン – タプル C PASCAL ABC Java Scala Ruby Javascript C++ C# Pytho n Lisp Scheme Clojure Smalltalk Haskell Prolog プログラミングにおけるパラダイムとは、プログラムの捉え方・見方に相当するもの ぱっと見てコードの流れ を把握しやすい (Software Design 2010年6月号 から引用)
7.
Python:パラダイム・オブジェクト指向 Pythonでオブジェクト指向 • オブジェクト指向 – ざっくりいうと、何かを実現する機能をデータとデータの操作のあつまりをオブ ジェクトとして実装する、という考え方 2015/9/30Python:パラダイム・オブジェクト指向 7 (OSSフォーラムから引用)
8.
Python:パラダイム・関数型 Pythonで関数型を書いてみる • 関数型言語 – 「プログラムというものは複数の関数が組合わさったものである」 •
問題を複数に関数化して組み合わせる→簡潔、再利用性(柔軟性) – Pythonでは関数はファーストクラスオブジェクト • オブジェクトを変数に格納したり、リストや辞書に格納したり、引数や返り値として扱うと いった高階関数(関数を引数にとる関数)の実現が可能 • 例1)map関数 – 与えられた関数を与えられたリストの各要素に適用した結果を返す関数 2015/9/30Python:パラダイム 8 「各数値に対して一つずつ消 費税を加算する」 という機能を抽象化・提供
9.
Python:パラダイム・関数型 • 例2)lambda(無名関数) – 名前を付けない関数なので、大体一度しか使用しない関数として使う –
pyhtonのlambdaはあくまで式、文はかけない – 関数オブジェクトなので、引数も取れる 2015/9/30Python書き方色々:オブジェクト志向 9 – 関数にもそのまま渡せる # こんなふうにも書ける
10.
Python:スコープ • スコープとは、ある名前空間から参照可能な コード上の範囲 • Pythonのスコープは雑にいうと2つ –
関数のローカルスコープ – モジュールのグローバルスコープ 2015/9/30Python:スコープ 10
11.
Python:関数のローカルスコープ Python:スコープ 11 2015/9/30 ・関数のローカルスコープ # 関数単位のスコープだからresponseは ifのブロック内外でも参照可能 例)
12.
Python:モジュールのグローバルスコープ ・モジュールのグローバルスコープ Python:スコープ 12 2015/9/30 # hello.py # hello.rb この場合Hello,
alpha!となるが、 関数外からも参照できるので、 もしname=“alpha”がない場合は Hello, omega!と表示される 例)
13.
Python:その他 • コーディングガイドライン規約 – PEP8
– Style Guide for Python Code – pyflakesで文法を自動でチェック – flake8 = PEP8+pyflakesみたいなの • Pythonの空気について知りたかったら – The Zen of Python – 「読みやすいことは良いこと」、「暗示より明示」 2015/9/30Python:その他 13
14.
Python:まとめ • Pythonはマルチパラダイム言語 • 関数型としての側面も強いし、オブジェクト指向プログラミングも十分にでき る •
スコープは関数単位、モジュールのグローバル(一つのファイル)単位の2つ • 「読みやすいことは良いこと」、「暗示より明示」 • 科学技術計算のモジュールが豊富 Python:まとめ 14 2015/9/30 非常にとっつきやすい言語だとおもいます。 みんなPythonであそぼう。
15.
15 2015/9/30 次はWebアプリケーションフレームワークの話をちょこっとします
16.
Django • Django – Pythonで作られたWebアプリケーションフレームワーク –
超大雑把にいうと、Webアプリ開発に必要なもの詰め込みセットツールみたいな もの • MVC – Mode: アプリケショーンデータ、ビジネスルール、ロジック、関数 – View: modelの表示。グラフや図等の情報表現 – Contoller:入力を受け取りmodelとviewへの命令に変換する • 他のフレームワークを知ってると混乱する部分 – Model models.py, api.py… – View Template template:index.html, edit.html – Controller View views.py ← 名前がややこしいんじゃ! 2015/9/30Django 16
17.
知っておきたい機能/ツール・基礎編 • dir() – モジュールで定義されている名前の一覧が見れる –
dir(__builtins__)で組み込み関数、変数の一覧が見れる • type() – 型の確認ができる – 型の判定ならisinstance()を使用した方が◎ • OrderDict – 辞書の順番が維持される – 稀に使わざるを得なくて重宝する 2015/9/30知っておきたいツール・基礎編 17
18.
知っておきたいツール・基礎編 • django-extensions – shell起動時にモジュールが読み込まれるの地味に便利 –
modelの検証とか – ブラウザ上で対話シェルを使えるよ • django-debug-toolbar – 実際に発行されるSQL文の確認 – Requests、Cacheの確認 – templateのコンテキストの確認 – 例 • pdbデバッガ – 地味に便利 – コードの任意の箇所にimport pdb;pdb.set_trace()と書くとそこで実行が停止し、停 止以前に読み込まれたモジュールは実行可能 2015/9/30知っておきたいツール・基礎編 18
Editor's Notes
#7:
Pythonのパラダイムについて説明 プログラミングにおけるパラダイムとは、プログラムの捉え方・見方に相当します。 例えば、オブジェクト指向パラダイムを持つSmalltalkでは、プログラムというものはオブジェクトの集まりからなるものである、という見方をしますし、 純粋な関数型プログラミングであるHaskellでは、プログラムというものは複数の関数が組合わさったものである、という見方をします。 Pythonでは、図でもわかるように複数のパラダイムをもつ、いわゆるマルチパラダイムプログラミング言語です。 オブジェクト指向、関数型、手続き型など様々なスタイルでプログラムを書けます。 ABCはプログラミング教育用として設計されていて、インデントとコロンを文法にすることが、プログラミング初学者がコーディングをする上でもっともわかりやすいものだ、という考えに行き着いた、ということだそうです。 まぁ確かにパッとみたときにわかりやすいですよね。 プログラミング言語を学ぶ時の入門としてPythonが上げられる理由の一つなのではないでしょうか。 http://docs.python.jp/3/howto/functional.html
Download