Movatterモバイル変換


[0]ホーム

URL:


Tomoya Nakayama, profile picture
Uploaded byTomoya Nakayama
ODP, PPTX1,233 views

Introduction of Python

社内向けPython入門講義資料

Embed presentation

Download as ODP, PPTX
Introduction to Python         2012/04/11      Tomoya Nakayama
AgendaPythonって何?とにかく使ってみよう
Pythonとの出会いもともとPerl使い技術書を何冊か読むサンプルコードが結構な確率でPythonこれはPython知らなきゃまずいな…使ってみると意外とおもしろい!これを機にPerlからPythonにシフトしよう!!                             3
Pythonって何?             4
Pythonの歴史Guide van Rossum が開発1991年 0.90公開1994年 1.0リリース2000年 2.0リリース2008年 3.0リリース                          Wikipedia                       「グイド・ヴァンロッサ    5                             ム」
Pythonの特徴スクリプト言語(インタプリタ)動的型付けインデントが命オブジェクト指向                    6
Pythonのいいところ幅広く使われている可読性 インデントが強制されているから簡単ライブラリが豊富                     7
プログラミング言語ランキング               Language               Ratings     1        Java                    17.110%     2        C                       17.087%     3        C#                      8.244%     4        C++                     8.047%     5        Objective-C             7.737%     6        PHP                     5.555%     7        (Visual) Basic          4.369%     8        JavaScript              3.386%     9        Python                  3.291%     10       Perl                    2.703% (出典) TIOBE Programming Community Index for March 2012                                                         8
オープンソースでもhttp://www.ohloh.net/languages/compare                                         9
こんなところにPythonが(出典) Wikipedia 「Pythonを使っている製品あるいはソフトウェア の一覧」                                      10
こんなところにもGmailGoogle GroupsGoogle Maps   (出典) Wikipedia 「Pythonを使っている製品あるいはソフトウェア    の一覧」                                      11
ライブラリが豊富標準ライブラリだけでも100種類以上 ファイル操作(CSV, HTML, XMLなど) インターネット(HTTPなど) GUI 単体テスト その他いろいろ… 詳細はこちら  http://www.python.jp/doc/release/library/index.html標準以外にも数多くのパッケージ                                                        12
使ってみよう         13
まずはインストールWindowsインストーラをダウンロードするインストーラを実行するおしまい                         14
コマンドライン実行環境の起動スタートメニューから「Python2.7」⇒「Python (command line)」コマンドプロンプトのような対話式の実行環境が 起動する                                15
お決まりの…print “Hello, Python.”                         16
Pythonの特徴をもう一度スクリプト言語(インタプリタ)動的型付けインデントが命オブジェクト指向                    17
動的型付け変数の型は動的に変化する PerlとかPHPと同じ foo = “string” foo = 7                    18
インデントが命プログラムの階層はインデントで表現次の2つの例では結果が異なる (1)   if score >= 80:         print “Good!n”         print “Your score is ” + str(score) + “n” (2)   if score >= 80:         print “Good!n”       print “Your score is ” + str(score) + “n”                                                      19
C言語で書くと…(1)   if (score >= 80) {        printf(“Good!n”);        printf(“Your score is %dn”, score);      }(2)   if (score >= 80) {        printf(“Good!n”);      }      printf(“Your score is %dn”, score);                                               20
制御構造:ifif score >= 80:   Print “Good!”elif score >= 60:   Print “So, so.”else:   Print “No Good.”                      21
制御構造:whilen = 0while n < 10:   print n   n = n + 1                     22
制御構造:forJavaでいう拡張forループ array = [1, 2, 3, 4, 5] for n in array:    print n                           23
データ構造:リスト(1)いわゆる「配列」 array1 = [1, 2, 3, 4, 5] array2 = [1, 2, [3, 4], 5] array3 = [1, 2, “3”, “4”, 5] array4 = range(2, 6, 1)いろんな参照方法  array1[0]  array1[1:3]  array1[-2]                                24
データ構造:リスト(2)いろんな操作 len(array1) array1.append(6) array3.remove(“3”) array1.reverse()                      25
データ構造:タプルリストと同じように使えるが、後から操作できな い tpl = (1, 2, 3, 4, 5) print tpl[0] tpl[0] = 10# これはNG                         26
データ構造:辞書キーと値のペアdic1 = {'name': 'John', 'age': 25}print dic1['name']dic2 = {   'john': {'name': 'John', 'age': 25},   'bob': {'name': 'Bob', 'age': 20}} # ネストもOKprint dic2['bob']['age']                                          27
リスト内包表記(1) array = [60, 92, 12, 54, 88]    print len([n for n in array if n >=     60])(2) ax = [“x1”, “x2”, “x3”]    ay = [“y1”, “y2”, “y3”]    az = [“z1”, “z2”, “z3”]    print [(x, y, z) for x in ax for y     in ay for z in az]                                          28
関数の定義def my_double(x):   return x * 2num = my_double(5)                     29
クラスの定義class Derived(Base):   # Baseクラスを継承したDerivedクラ ス  def __init__(self):    # __init__はコンストラクタ(名前固定)  def public_method(self, arg1, arg2):    # publicメソッド  def __private_method(self, arg1, arg2):    # 先頭に__を付けるとprivateに。obj = Derived()obj.public_method(arg1, arg2)obj.__private_method(arg1, arg2) # これはエラー    30
ダックタイピング(duck typing)"If it walks like a duck and quacks like a duck,  it must be a duck"「もしもそれがアヒルのように歩き、アヒル のように鳴くのなら、それはアヒルである」                                                   31
ダックタイピングclass Duck:    def sound(self):       return “quack”class Cat:    def sound(self):       return “myaa”def let_sound(obj):    print obj.sound()let_sound(Duck())let_sound(Cat())                        32
サンプルプログラム            33
twitterアプリの製作特定のユーザーのツイートを取得 twitter APIを利用 レスポンスをJSONで取得ツイートの時刻とテキストを出力                        34
プログラム作成の前に…twitter API  https://dev.twitter.com/docs/api/1/get/statuses/user_timelineJSON  「キー: 値」の形式でデータを表現                                                                  35
プログラム# -*- coding: utf-8 -*-import urllibimport jsonscr_name = 'NHK_PR' # twitterのスクリーンネームurl = 'https://twitter.com/statuses/user_timeline.json'     + '?screen_name=' + scr_nameresult = urllib.urlopen(     url, proxies={'https': 'http://proxy:8080'} )result = json.loads(result.read())for tweet in result:    print '[%s] %s' % (tweet['created_at'], tweet['text'])                                                       36
まとめ      37
まとめ簡単でしょ?使ってみてくださいね。               38
おまけ      39
Pythonの亜種IronPython  .NET frameworkで動くPython  .NET frameworkのライブラリが使える  Visual Studioが使えるっぽい(フォームデザイナと    か)Jython  Java VMで動くPython  ちょっとバージョン古めかな…                                   40
IronPythonimport clrclr.AddReferenceByPartialName(“System.Windows.Forms”)from System.Windows.Forms import *MessageBox.Show(    “Are you OK?”, “Test”,    MessageBoxButtons.YesNo,    MessageBoxIcon.Question)                                                        41
Jython    JavaのコードからPythonを呼び出す感じ。import org.python.util.PythonInterpreter;public class JythonTest {    public static void main(String[] args) {         PythonInterpreter pyi = new PythonInterpreter();         pyi.exec(“print 'Hello, world.'”);         pyi.execfile(“hello.py”); // ファイル実行もOK     }}                                                  42
DjangoPythonで作られたWebフレームワークモデルを書くだけで テーブルを勝手に作ってくれたり データ編集画面を自動で作ってくれたり                        43
Python入門者向けサイトほぷしぃ  http://www.isl.ne.jp/pcsp/python/PythonWeb  http://www.pythonweb.jp/                                      44
ご清聴ありがとうございました                 45

Recommended

PPTX
2017/12/21 虎の穴 Python勉強会
PDF
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
PDF
ゆるふわJava8入門
PDF
Python入門
PDF
PEP8を読んでみよう
PDF
20170131 python3 6 PEP526
PDF
Twitter sphere of #twitter4j #twtr_hack
PDF
Good Parts of PHP and the UNIX Philosophy
PDF
Javaセキュアコーディングセミナー東京第3回講義
PDF
PHPコアから読み解くPHP5.5
PDF
Pythonはどうやってlen関数で長さを手にいれているの?
PPTX
Java Puzzlers JJUG CCC 2016
PDF
from old Java to modern Java
PPTX
JJUG CCC 2017 Fall オレオレJVM言語を作ってみる
PDF
from old java to java8 - KanJava Edition
PDF
Pythonでの開発を効率的に進めるためのツール設定
PDF
PHPの今とこれから 2013
PPTX
【java8 勉強会】 怖くない!ラムダ式, Stream API
PDF
研究生のためのC++ no.7
PDF
PHPにおけるI/O多重化とyield
PDF
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
PDF
Javaセキュアコーディングセミナー東京第3回演習の解説
PDF
Java SE 8 lambdaで変わる プログラミングスタイル
PDF
PHPの今とこれから2014
PDF
Java8のstreamをダラダラまとめてみる
PDF
Tensorflow dynamically loadable XLA plugin ソースコード解析
PPTX
Django_Fukuoka
PDF
第2回勉強会スライド
PPTX
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PDF
Wrapping a C++ library with Cython

More Related Content

PPTX
2017/12/21 虎の穴 Python勉強会
PDF
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
PDF
ゆるふわJava8入門
PDF
Python入門
PDF
PEP8を読んでみよう
PDF
20170131 python3 6 PEP526
PDF
Twitter sphere of #twitter4j #twtr_hack
PDF
Good Parts of PHP and the UNIX Philosophy
2017/12/21 虎の穴 Python勉強会
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
ゆるふわJava8入門
Python入門
PEP8を読んでみよう
20170131 python3 6 PEP526
Twitter sphere of #twitter4j #twtr_hack
Good Parts of PHP and the UNIX Philosophy

What's hot

PDF
Javaセキュアコーディングセミナー東京第3回講義
PDF
PHPコアから読み解くPHP5.5
PDF
Pythonはどうやってlen関数で長さを手にいれているの?
PPTX
Java Puzzlers JJUG CCC 2016
PDF
from old Java to modern Java
PPTX
JJUG CCC 2017 Fall オレオレJVM言語を作ってみる
PDF
from old java to java8 - KanJava Edition
PDF
Pythonでの開発を効率的に進めるためのツール設定
PDF
PHPの今とこれから 2013
PPTX
【java8 勉強会】 怖くない!ラムダ式, Stream API
PDF
研究生のためのC++ no.7
PDF
PHPにおけるI/O多重化とyield
PDF
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
PDF
Javaセキュアコーディングセミナー東京第3回演習の解説
PDF
Java SE 8 lambdaで変わる プログラミングスタイル
PDF
PHPの今とこれから2014
PDF
Java8のstreamをダラダラまとめてみる
PDF
Tensorflow dynamically loadable XLA plugin ソースコード解析
Javaセキュアコーディングセミナー東京第3回講義
PHPコアから読み解くPHP5.5
Pythonはどうやってlen関数で長さを手にいれているの?
Java Puzzlers JJUG CCC 2016
from old Java to modern Java
JJUG CCC 2017 Fall オレオレJVM言語を作ってみる
from old java to java8 - KanJava Edition
Pythonでの開発を効率的に進めるためのツール設定
PHPの今とこれから 2013
【java8 勉強会】 怖くない!ラムダ式, Stream API
研究生のためのC++ no.7
PHPにおけるI/O多重化とyield
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
Javaセキュアコーディングセミナー東京第3回演習の解説
Java SE 8 lambdaで変わる プログラミングスタイル
PHPの今とこれから2014
Java8のstreamをダラダラまとめてみる
Tensorflow dynamically loadable XLA plugin ソースコード解析

Similar to Introduction of Python

PPTX
Django_Fukuoka
PDF
第2回勉強会スライド
PPTX
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PDF
Wrapping a C++ library with Cython
PPTX
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
PDF
Python & PyConJP 2014 Report
PDF
Python Kyoto study
PDF
Django_fukuoka
PDF
DATUM STUDIO PyCon2016 Turorial
PDF
「Python言語」はじめの一歩 / First step of Python
PDF
Pythonで始めるDropboxAPI
KEY
Hello World Python featuring GAE
PDF
はじめてのPython
PDF
Code Reading at Security and Programming camp 2011
PPT
Python languageupdate (2004)
PDF
LLdeade Python Language Update
PDF
Introduction Pycon2010
PPT
Pythonintro
PDF
CodingTips+ 基礎編
PDF
第36回NDS 発表資料 ちょこっとpython
Django_Fukuoka
第2回勉強会スライド
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
Wrapping a C++ library with Cython
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
Python & PyConJP 2014 Report
Python Kyoto study
Django_fukuoka
DATUM STUDIO PyCon2016 Turorial
「Python言語」はじめの一歩 / First step of Python
Pythonで始めるDropboxAPI
Hello World Python featuring GAE
はじめてのPython
Code Reading at Security and Programming camp 2011
Python languageupdate (2004)
LLdeade Python Language Update
Introduction Pycon2010
Pythonintro
CodingTips+ 基礎編
第36回NDS 発表資料 ちょこっとpython

Introduction of Python


[8]ページ先頭

©2009-2025 Movatter.jp