SlideShare ist ein Scribd-Unternehmen logo
1 von 88
Downloaden Sie, um offline zu lesen
「Python言語」
はじめの一歩
Takanori Suzuki / 2015-08-19
ヒカ☆ラボ
ハッシュタグは
#ヒカラボ
自己紹介
• 鈴木 たかのり / Takanori Suzuki
• Twitter: @takanory
PyCon JP 2015 Chair
Python Bouldering部 部長
• Pythonで開発してる会社
• 一部分を書いた→
• http://www.shuwasystem.co.jp/products/7980html/4315.html
BeProud所属
• 2015年4月発売
• 内容はここから主に引用
• 128ページ、1,980円+税
• http://gihyo.jp/book/2015/978-4-7741-7320-7
Pythonエンジニア養成読本
来場ありがとうござい
ます
Pythonでのプログラミングに
興味ある人?
Python
書いたことある人?
他の言語でプログラム
書いたことある人?
プログラム
書いたことない人?
注意事項
今日の内容だけで
Python書けるように
ならないよ
今日やること
1. Pythonの特徴
2. 言語の特徴
3. インストール
4. 基本的な言語仕様
5. Python 2と3の違い
6. よく使う標準ライブラリ
7. よく使うサードパーティ製パッケージ
8. どうやって学ぶか
1. Pythonの特徴
Q. Pythonってなにがで
きるの?
A. なんでもできます
きれいに書きやすい
ので保守しやすい
ちゃんとしてる
• 20年以上開発が継続
• 後方互換性あり
• PEPというルールに則って機能を拡張
Python 2 と 3
• 最新は Python 2.7.10 と 3.4.3(もうすぐ3.5.0)
• 一部後方互換性なし
• 今日は Python 3 ベースでやります
2. 言語の特徴
今日やること
1. Pythonの特徴
2. 言語の特徴 ← イマココ
3. インストール
4. 基本的な言語仕様
5. Python 2と3の違い
6. よく使う標準ライブラリ
7. よく使うサードパーティ製パッケージ
8. どうやって学ぶか
インデントでブロック構造
for i in range(10):
if i % 5 == 0:
print('ham')
elif i % 3 == 0:
print('eggs')
else:
print('spam')
対話モード
$ python
Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 23 2015, 02:52:03)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more
information.
>>> for i in range(10):
... if i % 5 == 0:
... print('ham')
... elif i % 3 == 0:
... print('eggs')
... else:
... print('spam')
...
ham
spam
spam
:
eggs
バッテリー付属
• 200+ の便利な標準ライブラリ
• http://docs.python.jp/3/library/
豊富な外部パッケージ
• 60,000+ の外部パッケージ
• PyPI: Python Package Index
• http://pypi.python.org/
• 「パイピーアイ」と読むらしい
3. インストール
python.orgからdownload
• Mac, Windowsはインストーラーからどうぞ
• https://www.python.org/downloads/
• WindowsはPATHの設定をお忘れなく
• Linux はそれぞれのパッケージ管理からどうぞ
4. 基本的な言語仕様
今日やること
1. Pythonの特徴
2. 言語の特徴
3. インストール
4. 基本的な言語仕様 ← イマココ
5. Python 2と3の違い
6. よく使う標準ライブラリ
7. よく使うサードパーティ製パッケージ
8. どうやって学ぶか
対話モードで数値計算
$ python
>>> 1 + 1
2
>>> 2 * 3
6
>>> width = 60
>>> height = 90
>>> width * height
5400
文字列とリスト
>>> ‘Hello world'
‘Hello world'
>>> "Monty Python's Flying Circus"
"Monty Python's Flying Circus"
>>> ['Hello', 3]
['Hello', 3]
関数と組み込み関数
>>> def add(a, b):
... return a + b
...
>>> add(1, 3)
4
>>> list(range(10))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
FizzBuzzで知る言語仕様
• 1から順番に数字を言う
• 3で割り切れる時は「Fizz」と言う
• 5で割り切れる時は「Buzz」と言う
• 3と5で割り切れる時は「FizzBuzz」と言う
Pythonファイルを実行
def fizzbuzz(num):
return num
print(fizzbuzz(4))
$ python fizzbuzz.py
4
for: ループ処理
def fizzbuzz(num):
return num
for num in range(1, 101):
print(fizzbuzz(num))
$ python fizzbuzz.py
1
2
3
:
100
if, elif, else: 条件分岐
def fizzbuzz(num):
if num % 3 == 0 and num % 5 == 0:
return 'FizzBuzz'
elif num % 3 == 0:
return 'Fizz'
elif num % 5 == 0:
return 'Buzz'
else:
return str(num)
FizzBuzzの完成
$ python fizzbuzz.py
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
:
Buzz
その他の言語仕様
• データ型
• 文字列の操作
• コレクション
• ファイル操作
• モジュール
データ型
• int: 整数型
• float: 浮動小数点型
• str: 文字列型
• bytes: バイト型
データ型
>>> type(1)
<class 'int'>
>>> type(1.1)
<class 'float'>
>>> type('日本語')
<class 'str'>
>>> '日本語'.encode('utf-8')
b'xe6x97xa5xe6x9cxacxe8xaax9e'
>>> type('日本語'.encode('utf-8'))
<class 'bytes'>
文字列の操作
>>> 'Hello World' # シングルクォーテーション
'Hello World'
>>> "Hello World" # ダブルクォーテーション
'Hello World'
>>> 'Mt.' + 'Fuji' # 文字列の連結
'Mt.Fuji'
>>> 'python'[2:5] # スライス
'tho'
>>> 't' in 'python' # 文字列の存在チェック
True
>>> 'pain-au-chocolat'.split('-') # 文字列分割
['pain', 'au', 'chocolat']
コレクション
• list: リスト
• tuple: タプル
• dict: 辞書
• set: 集合
list: リスト
>>> animals = ['cat', 'dog', 'snake']
>>> type(animals)
<class 'list'>
>>> animals[0] # 要素を取得
'cat'
>>> animals[1:] # スライスも使える
['dog', 'snake']
>>> animals.append('elephant') # 要素を追加
>>> for animal in animals: # ループで取り出す
... print(animal)
...
cat
dog
snake
elephant
tuple: タプル
>>> animals = ('cat', 'dog', 'snake')
>>> type(animals)
<class 'tuple'>
>>> animals[0] # 要素を取得
'cat'
>>> animals[1:] # スライスも使える
('dog', 'snake')
>>> animals.append('elephant') # 追加はエラー
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute
'append'
>>> 'spam', # 要素が一つのtupleを作成
('spam',)
dict: 辞書
>>> user_info = {
... 'firstname': 'takanori',
... 'lastname': 'suzuki',
... }
>>> user_info
{'firstname': 'takanori', 'lastname': 'suzuki'}
>>> user_info['firstname'] # 要素を取得
'takanori'
>>> 'firstname' in user_info # キーの存在チェック
True
>>> for key, value in user_info.items():
... print(key, value)
...
firstname takanori
lastname suzuki
set: 集合
>>> {'spam', 'ham'}
{'ham', 'spam'}
>>> {'spam', 'spam', 'spam'}
{'spam'}
>>> set1 = {'spam', 'ham'}
>>> set2 = {'ham', 'eggs'}
>>> set1 & set2 # 集合の積
{'ham'}
>>> set1 | set2 # 集合の和
{'ham', 'eggs', 'spam'}
ファイル操作
>>> with open('todo.txt') as f: # ファイルを開く
... todo_str = f.read()
...
>>> with open('memo.txt', 'w') as f: # 書き込む
... f.write('Hello worldn')
...
12
>>> with open('memo.txt', 'a', encoding='utf-8')
as f: # 文字コード指定して追記
... f.write('こんにちは世界n')
...
8
モジュール
def add(a, b):
return a + b
def sub(a, b):
return a - b
>>> import calc
>>> calc.add(1, 3)
4
>>> from calc import sub
>>> sub(5, 2)
3
calc.py
5. Python 2 と 3 の違い
今日やること
1. Pythonの特徴
2. 言語の特徴
3. インストール
4. 基本的な言語仕様
5. Python 2と3の違い ← イマココ
6. よく使う標準ライブラリ
7. よく使うサードパーティ製パッケージ
8. どうやって学ぶか
printが文から関数に
>>> print # 空行を出力
>>> print 'Hello Python 2!'
Hello Python 2!
Python 2のprint文
Python 3のprint関数
>>> print() # 空行を出力
>>> print('Hello Python 3!')
Hello Python 3!
文字列がUnicodeに統一
Python 2の2種類の文字列
Python 3の文字列は1種類
>>> type('str文字列')
<type 'str'>
>>> type(u'unicode文字列')
<type 'unicode'>
>>> type('str文字列')
<class 'str'>
>>> type(u'unicode文字列')
<class 'str'>
整数の割り算が実数
Python 2の整数の割り算の結果は整数
Python 3は浮動小数点数
>>> 4 / 2
2
>>> 1 / 3
0
>>> 4 / 2
2.0
>>> 1 / 3
0.3333333333333333
標準ライブラリの再構成
• 名前が変更
• ConfigParser -> configparser
• 統合
• StringIO, cStringIO -> io
• 再構成
• urllib, urllib2, urlparse -> urllib.*
6. よく使う
標準ライブラリ
今日やること
1. Pythonの特徴
2. 言語の特徴
3. インストール
4. 基本的な言語仕様
5. Python 2と3の違い
6. よく使う標準ライブラリ← イマココ
7. よく使うサードパーティ製パッケージ
8. どうやって学ぶか
200+ の標準ライブラリ
http://docs.python.jp/3/library/
re: 正規表現
>>> import re
>>> m = re.search('py(thon)', 'python')
>>> m
<_sre.SRE_Match object; span=(0, 6),
match='python'>
>>> m.group()
'python'
>>> m.group(0)
'python'
>>> m.group(1)
'thon'
sys, os: システムパラメータとOS
>>> import os
>>> os.mkdir('spam')
>>> os.chdir('spam')
>>> os.getcwd() # 現在のディレクトリ
'/Users/takanori/hikalab/spam'
>>> import sys
>>> sys.exit(1)
datetime: 日付と時刻
>>> import datetime
>>> now = datetime.datetime.now()
>>> now.isoformat()
'2015-08-17T18:17:49.623626'
>>> today = datetime.date(2015, 8, 18)
>>> nextyear = datetime.date(2016, 1, 1)
>>> delta = nextyear - today
>>> delta.days
136
math, random: 数学関数と乱数
>>> import math
>>> math.pi
3.141592653589793
>>> math.sqrt(2)
1.4142135623730951
>>> import random
>>> random.randint(1, 1000)
632
>>> data = ['spam', 'ham', 'eggs']
>>> random.choice(data)
'eggs'
>>> random.shuffle(data)
>>> data
['spam', 'eggs', 'ham']
itertools: イテレータ生成関数
>>> import itertools
>>> list(itertools.chain('ABC', 'DEF'))
['A', 'B', 'C', 'D', 'E', 'F']
>>> list(itertools.combinations('ABCD', 2))
[('A', 'B'), ('A', 'C'), ('A', 'D'), ('B',
'C'), ('B', 'D'), ('C', 'D')]
shutil: 高レベルなファイル操作
>>> import shutil
>>> shutil.copytree('src_dir', 'dst_dir')
>>> shutil.rmtree('src_dir')
json: JSONエンコーダ、デコーダ
>>> import json
>>> data = {'spam': 'SPAM',
... 'ham': True,
... 'eggs': None,
... }
>>> json_str = json.dumps(data)
>>> json_str
'{"eggs": null, "ham": true, "spam": "SPAM"}'
>>> json.loads(json_str)
{'ham': True, 'eggs': None, 'spam': 'SPAM'}
7. よく使う
サードパーティ製
パッケージ
今日やること
1. Pythonの特徴
2. 言語の特徴
3. インストール
4. 基本的な言語仕様
5. Python 2と3の違い
6. よく使う標準ライブラリ
7. よく使うサードパーティ製パッケージ← イマココ
8. どうやって学ぶか
60,000+ の
サードパーティ製
パッケージ
https://pypi.python.org/pypi
pipとvirtualenv
• pip: サードパーティ製パッケージをインストールす
るためのコマンド
• virtualenv: 独立したPython環境を作る
pip のインストール
$ wget https://bootstrap.pypa.io/get-pip.py
$ python get-pip.py
$ pip install (package name)
virtualenv のインストール
$ pip install virtualenv
$ virtualenv venv
$ . venv/bin/activate
(venv)$ pip install requests
(venv)$ python
>>> import requests
>>> quit()
(venv)$ deactivate
$ python
>>> import requests
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named 'requests'
dateutil: 日時操作の強力な拡張
$ pip install python-dateutil
>>> from dateutil.parser import parse
>>> parse("Mon Jan 26 20:34:20 UTC 2015")
datetime.datetime(2015, 1, 26, 20, 34, 20,
tzinfo=tzutc())
>>> parse("2015-01-26 20:34:20 JST")
datetime.datetime(2015, 1, 26, 20, 34, 20,
tzinfo=tzlocal())
>>> parse("Jan-26-2015")
datetime.datetime(2015, 1, 26, 0, 0)
Requests: HTTPクライアント
$ pip install requests
>>> import requests
>>> url = 'http://connpass.com/api/v1/event/?keyword=python'
>>> r = requests.get(url) # URLにアクセス
>>> print(r.status_code) # ステータスコードを取得
200
>>> for event in r.json()['events'][:3]: # 先頭3件を取得
... print(event['title']) # イベントのタイトルを取得
...
Python mini hack-a-thon 夏山合宿 2015
SoftLayer Bluemix Summit 2015
コミュニティ運営の秘訣を知りたい人、『Sync Meetup』に集まれ!!
BeautifulSoup4: HTML, XMLパーサ
$ pip install beautifulsoup4
>>> from bs4 import BeautifulSoup
>>> import requests
>>> r = requests.get('http://docs.python.jp/3/library/')
>>> soup = BeautifulSoup(r.content, "html.parser") # HTMLパース
>>> toctree = soup.find('div', 'toctree-wrapper') # 目次を取得
>>> links = toctree.find_all('a') # aタグを全て取得
>>> len(links) # リンクの数を取得
358
>>> for link in links[:3]: # 先頭3件を取得
... print(link.text)
...
1. はじめに
2. 組み込み関数
3. 組み込み定数
Pillow: 画像処理ライブラリ
$ pip install pillow
>>> from PIL import Image
>>> image = Image.open('sample.jpg') # 画像を読み込み
>>> half = (image.size[0] / 2, image.size[1] / 2)
>>> half = image.resize(half, Image.ANTIALIAS) # 縮小
>>> half.save('sample-half.jpg') # 画像を保存
>>> rotate = image.transpose(Image.ROTATE_90) # 回転
>>> rotate.save('sample-rotate.png') # PNGで保存
コーディング規約
• PEP 0008 -- Style Guide for Python Code
• https://www.python.org/dev/peps/pep-0008/
• pep8: コーディング規約のチェック
• autopep8: 自動的にPEP8形式にする
• flake8: pep8 + ソースコードのチェック
Webフレームワーク
• Django: https://www.djangoproject.com/
• Pyramid: http://docs.pylonsproject.org/en/latest/docs/
pyramid.html
• Flask: http://flask.pocoo.org/
• Bottle: http://bottlepy.org/
PyData関連
• NumPy: 行列計算
• SciPy: 化学計算
• Pandas: データ操作と処理
• matplotlib: データ可視化
• Chiner: 深層学習
その他
• Sphinx: ドキュメント作成
• Ansible: システム構成管理
• pytz: タイムゾーン情報
• paramiko: SSH2接続
8. どうやって学ぶか
Pythonエンジニア養成読本
• これを買って復習しよう
PyCon JP 2015
• https://pycon.jp/2015/ja/
• 10月9日(金): チュートリアル
• 10月10日(土)、11日(日): カンファレンス
• 10月12日(月・祝): 開発スプリント
Web上のテキスト
• Pythonチュートリアル
• http://docs.python.jp/3.4/tutorial/
• Dive into Python 3 日本語版
• http://diveintopython3-ja.rdy.jp/
• Python HOWTO
• http://docs.python.jp/3.4/howto/
まとめ
まとめ
• 復習しよう
• コードを書こう
• コミュニティに飛び込もう
Happy Hacking !

Weitere ähnliche Inhalte

Was ist angesagt?

Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.kiki utagawa
 
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptxネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptxShota Shinogi
 
【Unite Tokyo 2019】Understanding C# Struct All Things
【Unite Tokyo 2019】Understanding C# Struct All Things【Unite Tokyo 2019】Understanding C# Struct All Things
【Unite Tokyo 2019】Understanding C# Struct All ThingsUnityTechnologiesJapan002
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなKentaro Matsui
 
できる!並列・並行プログラミング
できる!並列・並行プログラミングできる!並列・並行プログラミング
できる!並列・並行プログラミングPreferred Networks
 
ELFの動的リンク
ELFの動的リンクELFの動的リンク
ELFの動的リンク7shi
 
Pythonによる黒魔術入門
Pythonによる黒魔術入門Pythonによる黒魔術入門
Pythonによる黒魔術入門大樹 小倉
 
C# ゲームプログラミングはホントにメモリのことに無頓着でいいの?
C# ゲームプログラミングはホントにメモリのことに無頓着でいいの?C# ゲームプログラミングはホントにメモリのことに無頓着でいいの?
C# ゲームプログラミングはホントにメモリのことに無頓着でいいの?京大 マイコンクラブ
 
【Unity】 Behavior TreeでAIを作る
 【Unity】 Behavior TreeでAIを作る 【Unity】 Behavior TreeでAIを作る
【Unity】 Behavior TreeでAIを作るtorisoup
 
F#入門 ~関数プログラミングとは何か~
F#入門 ~関数プログラミングとは何か~F#入門 ~関数プログラミングとは何か~
F#入門 ~関数プログラミングとは何か~Nobuhisa Koizumi
 
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介Preferred Networks
 
Djangoのエントリポイントとアプリケーションの仕組み
Djangoのエントリポイントとアプリケーションの仕組みDjangoのエントリポイントとアプリケーションの仕組み
Djangoのエントリポイントとアプリケーションの仕組みShinya Okano
 
組合せ最適化入門:線形計画から整数計画まで
組合せ最適化入門:線形計画から整数計画まで組合せ最適化入門:線形計画から整数計画まで
組合せ最適化入門:線形計画から整数計画までShunji Umetani
 
constexpr関数はコンパイル時処理。これはいい。実行時が霞んで見える。cpuの嬌声が聞こえてきそうだ
constexpr関数はコンパイル時処理。これはいい。実行時が霞んで見える。cpuの嬌声が聞こえてきそうだconstexpr関数はコンパイル時処理。これはいい。実行時が霞んで見える。cpuの嬌声が聞こえてきそうだ
constexpr関数はコンパイル時処理。これはいい。実行時が霞んで見える。cpuの嬌声が聞こえてきそうだGenya Murakami
 
オブジェクト指向できていますか?
オブジェクト指向できていますか?オブジェクト指向できていますか?
オブジェクト指向できていますか?Moriharu Ohzu
 
すごい constexpr たのしくレイトレ!
すごい constexpr たのしくレイトレ!すごい constexpr たのしくレイトレ!
すごい constexpr たのしくレイトレ!Genya Murakami
 
ラムダ計算入門
ラムダ計算入門ラムダ計算入門
ラムダ計算入門Eita Sugimoto
 
【CEDEC2018】CPUを使い切れ! Entity Component System(通称ECS) が切り開く新しいプログラミング
【CEDEC2018】CPUを使い切れ! Entity Component System(通称ECS) が切り開く新しいプログラミング【CEDEC2018】CPUを使い切れ! Entity Component System(通称ECS) が切り開く新しいプログラミング
【CEDEC2018】CPUを使い切れ! Entity Component System(通称ECS) が切り開く新しいプログラミングUnity Technologies Japan K.K.
 

Was ist angesagt? (20)

Glibc malloc internal
Glibc malloc internalGlibc malloc internal
Glibc malloc internal
 
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
 
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptxネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
 
【Unite Tokyo 2019】Understanding C# Struct All Things
【Unite Tokyo 2019】Understanding C# Struct All Things【Unite Tokyo 2019】Understanding C# Struct All Things
【Unite Tokyo 2019】Understanding C# Struct All Things
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
 
できる!並列・並行プログラミング
できる!並列・並行プログラミングできる!並列・並行プログラミング
できる!並列・並行プログラミング
 
ELFの動的リンク
ELFの動的リンクELFの動的リンク
ELFの動的リンク
 
実用Brainf*ckプログラミング
実用Brainf*ckプログラミング実用Brainf*ckプログラミング
実用Brainf*ckプログラミング
 
Pythonによる黒魔術入門
Pythonによる黒魔術入門Pythonによる黒魔術入門
Pythonによる黒魔術入門
 
C# ゲームプログラミングはホントにメモリのことに無頓着でいいの?
C# ゲームプログラミングはホントにメモリのことに無頓着でいいの?C# ゲームプログラミングはホントにメモリのことに無頓着でいいの?
C# ゲームプログラミングはホントにメモリのことに無頓着でいいの?
 
【Unity】 Behavior TreeでAIを作る
 【Unity】 Behavior TreeでAIを作る 【Unity】 Behavior TreeでAIを作る
【Unity】 Behavior TreeでAIを作る
 
F#入門 ~関数プログラミングとは何か~
F#入門 ~関数プログラミングとは何か~F#入門 ~関数プログラミングとは何か~
F#入門 ~関数プログラミングとは何か~
 
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
 
Djangoのエントリポイントとアプリケーションの仕組み
Djangoのエントリポイントとアプリケーションの仕組みDjangoのエントリポイントとアプリケーションの仕組み
Djangoのエントリポイントとアプリケーションの仕組み
 
組合せ最適化入門:線形計画から整数計画まで
組合せ最適化入門:線形計画から整数計画まで組合せ最適化入門:線形計画から整数計画まで
組合せ最適化入門:線形計画から整数計画まで
 
constexpr関数はコンパイル時処理。これはいい。実行時が霞んで見える。cpuの嬌声が聞こえてきそうだ
constexpr関数はコンパイル時処理。これはいい。実行時が霞んで見える。cpuの嬌声が聞こえてきそうだconstexpr関数はコンパイル時処理。これはいい。実行時が霞んで見える。cpuの嬌声が聞こえてきそうだ
constexpr関数はコンパイル時処理。これはいい。実行時が霞んで見える。cpuの嬌声が聞こえてきそうだ
 
オブジェクト指向できていますか?
オブジェクト指向できていますか?オブジェクト指向できていますか?
オブジェクト指向できていますか?
 
すごい constexpr たのしくレイトレ!
すごい constexpr たのしくレイトレ!すごい constexpr たのしくレイトレ!
すごい constexpr たのしくレイトレ!
 
ラムダ計算入門
ラムダ計算入門ラムダ計算入門
ラムダ計算入門
 
【CEDEC2018】CPUを使い切れ! Entity Component System(通称ECS) が切り開く新しいプログラミング
【CEDEC2018】CPUを使い切れ! Entity Component System(通称ECS) が切り開く新しいプログラミング【CEDEC2018】CPUを使い切れ! Entity Component System(通称ECS) が切り開く新しいプログラミング
【CEDEC2018】CPUを使い切れ! Entity Component System(通称ECS) が切り開く新しいプログラミング
 

Andere mochten auch

python-twitterを用いたTwitterデータ収集
python-twitterを用いたTwitterデータ収集python-twitterを用いたTwitterデータ収集
python-twitterを用いたTwitterデータ収集Hikaru Takemura
 
PythonによるWebスクレイピング入門
PythonによるWebスクレイピング入門PythonによるWebスクレイピング入門
PythonによるWebスクレイピング入門Hironori Sekine
 
Python 機械学習プログラミング データ分析ライブラリー解説編
Python 機械学習プログラミング データ分析ライブラリー解説編Python 機械学習プログラミング データ分析ライブラリー解説編
Python 機械学習プログラミング データ分析ライブラリー解説編Etsuji Nakai
 
10分でわかるPythonの開発環境
10分でわかるPythonの開発環境10分でわかるPythonの開発環境
10分でわかるPythonの開発環境Hisao Soyama
 
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識Katsuhiro Morishita
 
野球Hack!~Pythonを用いたデータ分析と可視化 #pyconjp
野球Hack!~Pythonを用いたデータ分析と可視化 #pyconjp野球Hack!~Pythonを用いたデータ分析と可視化 #pyconjp
野球Hack!~Pythonを用いたデータ分析と可視化 #pyconjpShinichi Nakagawa
 
Python東海Vol.5 IPythonをマスターしよう
Python東海Vol.5 IPythonをマスターしようPython東海Vol.5 IPythonをマスターしよう
Python東海Vol.5 IPythonをマスターしようHiroshi Funai
 
RとPythonによるデータ解析入門
RとPythonによるデータ解析入門RとPythonによるデータ解析入門
RとPythonによるデータ解析入門Atsushi Hayakawa
 
Scikit learnで学ぶ機械学習入門
Scikit learnで学ぶ機械学習入門Scikit learnで学ぶ機械学習入門
Scikit learnで学ぶ機械学習入門Takami Sato
 
scikit-learnを用いた機械学習チュートリアル
scikit-learnを用いた機械学習チュートリアルscikit-learnを用いた機械学習チュートリアル
scikit-learnを用いた機械学習チュートリアル敦志 金谷
 
Python入門 : 4日間コース社内トレーニング
Python入門 : 4日間コース社内トレーニングPython入門 : 4日間コース社内トレーニング
Python入門 : 4日間コース社内トレーニングYuichi Ito
 
【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817
【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817
【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817leverages_event
 
Pythonスタートアップ勉強会201109 python入門
Pythonスタートアップ勉強会201109 python入門Pythonスタートアップ勉強会201109 python入門
Pythonスタートアップ勉強会201109 python入門Takayuki Shimizukawa
 
Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編- Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編- Hironori Sekine
 
Python による 「スクレイピング & 自然言語処理」入門
Python による 「スクレイピング & 自然言語処理」入門Python による 「スクレイピング & 自然言語処理」入門
Python による 「スクレイピング & 自然言語処理」入門Tatsuya Tojima
 
続Pythonによるwebスクレイピング入門
続Pythonによるwebスクレイピング入門続Pythonによるwebスクレイピング入門
続Pythonによるwebスクレイピング入門Hironori Sekine
 
Rでソーシャルネットワーク分析
Rでソーシャルネットワーク分析Rでソーシャルネットワーク分析
Rでソーシャルネットワーク分析Hiroko Onari
 
実践で学ぶネットワーク分析
実践で学ぶネットワーク分析実践で学ぶネットワーク分析
実践で学ぶネットワーク分析Mitsunori Sato
 

Andere mochten auch (20)

python-twitterを用いたTwitterデータ収集
python-twitterを用いたTwitterデータ収集python-twitterを用いたTwitterデータ収集
python-twitterを用いたTwitterデータ収集
 
PythonによるWebスクレイピング入門
PythonによるWebスクレイピング入門PythonによるWebスクレイピング入門
PythonによるWebスクレイピング入門
 
Python 機械学習プログラミング データ分析ライブラリー解説編
Python 機械学習プログラミング データ分析ライブラリー解説編Python 機械学習プログラミング データ分析ライブラリー解説編
Python 機械学習プログラミング データ分析ライブラリー解説編
 
Pythonで簡単ネットワーク分析
Pythonで簡単ネットワーク分析Pythonで簡単ネットワーク分析
Pythonで簡単ネットワーク分析
 
10分でわかるPythonの開発環境
10分でわかるPythonの開発環境10分でわかるPythonの開発環境
10分でわかるPythonの開発環境
 
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
 
野球Hack!~Pythonを用いたデータ分析と可視化 #pyconjp
野球Hack!~Pythonを用いたデータ分析と可視化 #pyconjp野球Hack!~Pythonを用いたデータ分析と可視化 #pyconjp
野球Hack!~Pythonを用いたデータ分析と可視化 #pyconjp
 
Python東海Vol.5 IPythonをマスターしよう
Python東海Vol.5 IPythonをマスターしようPython東海Vol.5 IPythonをマスターしよう
Python東海Vol.5 IPythonをマスターしよう
 
RとPythonによるデータ解析入門
RとPythonによるデータ解析入門RとPythonによるデータ解析入門
RとPythonによるデータ解析入門
 
Scikit learnで学ぶ機械学習入門
Scikit learnで学ぶ機械学習入門Scikit learnで学ぶ機械学習入門
Scikit learnで学ぶ機械学習入門
 
scikit-learnを用いた機械学習チュートリアル
scikit-learnを用いた機械学習チュートリアルscikit-learnを用いた機械学習チュートリアル
scikit-learnを用いた機械学習チュートリアル
 
Gensim
GensimGensim
Gensim
 
Python入門 : 4日間コース社内トレーニング
Python入門 : 4日間コース社内トレーニングPython入門 : 4日間コース社内トレーニング
Python入門 : 4日間コース社内トレーニング
 
【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817
【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817
【ヒカ☆ラボ】 株式会社AMG Solution 山口 博史氏登壇資料 20170817
 
Pythonスタートアップ勉強会201109 python入門
Pythonスタートアップ勉強会201109 python入門Pythonスタートアップ勉強会201109 python入門
Pythonスタートアップ勉強会201109 python入門
 
Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編- Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編-
 
Python による 「スクレイピング & 自然言語処理」入門
Python による 「スクレイピング & 自然言語処理」入門Python による 「スクレイピング & 自然言語処理」入門
Python による 「スクレイピング & 自然言語処理」入門
 
続Pythonによるwebスクレイピング入門
続Pythonによるwebスクレイピング入門続Pythonによるwebスクレイピング入門
続Pythonによるwebスクレイピング入門
 
Rでソーシャルネットワーク分析
Rでソーシャルネットワーク分析Rでソーシャルネットワーク分析
Rでソーシャルネットワーク分析
 
実践で学ぶネットワーク分析
実践で学ぶネットワーク分析実践で学ぶネットワーク分析
実践で学ぶネットワーク分析
 

Ähnlich wie 「Python言語」はじめの一歩 / First step of Python

「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12Takanori Suzuki
 
Pyconjp2014_implementations
Pyconjp2014_implementationsPyconjp2014_implementations
Pyconjp2014_implementationsmasahitojp
 
Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!Kir Chou
 
Python & PyConJP 2014 Report
Python & PyConJP 2014 ReportPython & PyConJP 2014 Report
Python & PyConJP 2014 Reportgree_tech
 
Python Kyoto study
Python Kyoto studyPython Kyoto study
Python Kyoto studyNaoya Inada
 
rpi_handson_2.5
rpi_handson_2.5rpi_handson_2.5
rpi_handson_2.5teruyaono1
 
Pyconjp2016 pyftplib
Pyconjp2016 pyftplibPyconjp2016 pyftplib
Pyconjp2016 pyftplibShinya Okano
 
おまえらこのライブラリ使ってないの? m9 (2013-07)
おまえらこのライブラリ使ってないの? m9	(2013-07)おまえらこのライブラリ使ってないの? m9	(2013-07)
おまえらこのライブラリ使ってないの? m9 (2013-07)Toru Furukawa
 
cs-10. Python の基礎(オブジェクト,メソッド,引数,文字列)
cs-10. Python の基礎(オブジェクト,メソッド,引数,文字列) cs-10. Python の基礎(オブジェクト,メソッド,引数,文字列)
cs-10. Python の基礎(オブジェクト,メソッド,引数,文字列) kunihikokaneko1
 
Python × Herokuで作る 雑談slack bot
Python × Herokuで作る 雑談slack botPython × Herokuで作る 雑談slack bot
Python × Herokuで作る 雑談slack botdcubeio
 
Apilecture for 2014/02/22 at shannonlab
Apilecture for 2014/02/22 at shannonlabApilecture for 2014/02/22 at shannonlab
Apilecture for 2014/02/22 at shannonlabYutaka Kobayshi
 
Python languageupdate (2004)
Python languageupdate (2004)Python languageupdate (2004)
Python languageupdate (2004)泰 増田
 
私の好きなPython構文 vol.2 #nds46
私の好きなPython構文 vol.2 #nds46私の好きなPython構文 vol.2 #nds46
私の好きなPython構文 vol.2 #nds46civicpg
 
Pelicanによる www.python.jpの構築
Pelicanによる www.python.jpの構築Pelicanによる www.python.jpの構築
Pelicanによる www.python.jpの構築Atsuo Ishimoto
 
Perlワンライナーで全てのモジュールにuse v5.8.0つける!
Perlワンライナーで全てのモジュールにuse v5.8.0つける!Perlワンライナーで全てのモジュールにuse v5.8.0つける!
Perlワンライナーで全てのモジュールにuse v5.8.0つける!debug-ito
 
Pythonを取り巻く開発環境 #pyconjp
Pythonを取り巻く開発環境 #pyconjpPythonを取り巻く開発環境 #pyconjp
Pythonを取り巻く開発環境 #pyconjpYoshifumi Yamaguchi
 

Ähnlich wie 「Python言語」はじめの一歩 / First step of Python (20)

「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
 
Pyconjp2014_implementations
Pyconjp2014_implementationsPyconjp2014_implementations
Pyconjp2014_implementations
 
Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!
 
Python & PyConJP 2014 Report
Python & PyConJP 2014 ReportPython & PyConJP 2014 Report
Python & PyConJP 2014 Report
 
210728 mpy
210728 mpy210728 mpy
210728 mpy
 
Python Kyoto study
Python Kyoto studyPython Kyoto study
Python Kyoto study
 
rpi_handson_2.5
rpi_handson_2.5rpi_handson_2.5
rpi_handson_2.5
 
Pyconjp2016 pyftplib
Pyconjp2016 pyftplibPyconjp2016 pyftplib
Pyconjp2016 pyftplib
 
Introduction of Python
Introduction of PythonIntroduction of Python
Introduction of Python
 
How to run P4 BMv2
How to run P4 BMv2How to run P4 BMv2
How to run P4 BMv2
 
おまえらこのライブラリ使ってないの? m9 (2013-07)
おまえらこのライブラリ使ってないの? m9	(2013-07)おまえらこのライブラリ使ってないの? m9	(2013-07)
おまえらこのライブラリ使ってないの? m9 (2013-07)
 
cs-10. Python の基礎(オブジェクト,メソッド,引数,文字列)
cs-10. Python の基礎(オブジェクト,メソッド,引数,文字列) cs-10. Python の基礎(オブジェクト,メソッド,引数,文字列)
cs-10. Python の基礎(オブジェクト,メソッド,引数,文字列)
 
Python × Herokuで作る 雑談slack bot
Python × Herokuで作る 雑談slack botPython × Herokuで作る 雑談slack bot
Python × Herokuで作る 雑談slack bot
 
Apilecture for 2014/02/22 at shannonlab
Apilecture for 2014/02/22 at shannonlabApilecture for 2014/02/22 at shannonlab
Apilecture for 2014/02/22 at shannonlab
 
Python languageupdate (2004)
Python languageupdate (2004)Python languageupdate (2004)
Python languageupdate (2004)
 
私の好きなPython構文 vol.2 #nds46
私の好きなPython構文 vol.2 #nds46私の好きなPython構文 vol.2 #nds46
私の好きなPython構文 vol.2 #nds46
 
Pelicanによる www.python.jpの構築
Pelicanによる www.python.jpの構築Pelicanによる www.python.jpの構築
Pelicanによる www.python.jpの構築
 
Perlワンライナーで全てのモジュールにuse v5.8.0つける!
Perlワンライナーで全てのモジュールにuse v5.8.0つける!Perlワンライナーで全てのモジュールにuse v5.8.0つける!
Perlワンライナーで全てのモジュールにuse v5.8.0つける!
 
Pythonを取り巻く開発環境 #pyconjp
Pythonを取り巻く開発環境 #pyconjpPythonを取り巻く開発環境 #pyconjp
Pythonを取り巻く開発環境 #pyconjp
 
Django_fukuoka
Django_fukuokaDjango_fukuoka
Django_fukuoka
 

Mehr von Takanori Suzuki

Outside and inside of PyCon JP 2016
Outside and inside of PyCon JP 2016Outside and inside of PyCon JP 2016
Outside and inside of PyCon JP 2016Takanori Suzuki
 
The tale of I and python / Python とのはなし
The tale of I and python / Python とのはなしThe tale of I and python / Python とのはなし
The tale of I and python / Python とのはなしTakanori Suzuki
 
PyCon JP 2015 Closing speech
PyCon JP 2015 Closing speechPyCon JP 2015 Closing speech
PyCon JP 2015 Closing speechTakanori Suzuki
 
Two sides of Python Engineer Training Book in PyCon mini Sapporo
Two sides of Python Engineer Training Book in PyCon mini SapporoTwo sides of Python Engineer Training Book in PyCon mini Sapporo
Two sides of Python Engineer Training Book in PyCon mini SapporoTakanori Suzuki
 
Two sides of "Python Engineer Training Book"
Two sides of "Python Engineer Training Book"Two sides of "Python Engineer Training Book"
Two sides of "Python Engineer Training Book"Takanori Suzuki
 
Two sides of "Python Engineer Training Book"
Two sides of "Python Engineer Training Book"Two sides of "Python Engineer Training Book"
Two sides of "Python Engineer Training Book"Takanori Suzuki
 
PyCon JP を支える技術/ Technology that underlie PyCon JP / BPStudy #88
PyCon JP を支える技術/ Technology that underlie PyCon JP / BPStudy #88PyCon JP を支える技術/ Technology that underlie PyCon JP / BPStudy #88
PyCon JP を支える技術/ Technology that underlie PyCon JP / BPStudy #88Takanori Suzuki
 
Plone features and trends
Plone features and trendsPlone features and trends
Plone features and trendsTakanori Suzuki
 
PyCon JP を支える技術 / Technologies that underlie PyCon JP
PyCon JP を支える技術 / Technologies that underlie PyCon JPPyCon JP を支える技術 / Technologies that underlie PyCon JP
PyCon JP を支える技術 / Technologies that underlie PyCon JPTakanori Suzuki
 
PyCon JP 2014 Opening(14 sep)
PyCon JP 2014 Opening(14 sep)PyCon JP 2014 Opening(14 sep)
PyCon JP 2014 Opening(14 sep)Takanori Suzuki
 
PyCon JP 2014 opening(13 sep)
PyCon JP 2014 opening(13 sep)PyCon JP 2014 opening(13 sep)
PyCon JP 2014 opening(13 sep)Takanori Suzuki
 
Introduction of PyCon JP / TechLION vol.17
Introduction of PyCon JP / TechLION vol.17Introduction of PyCon JP / TechLION vol.17
Introduction of PyCon JP / TechLION vol.17Takanori Suzuki
 
collective.socialpublish
collective.socialpublishcollective.socialpublish
collective.socialpublishTakanori Suzuki
 
Introduction of PyCon APAC
Introduction of PyCon APACIntroduction of PyCon APAC
Introduction of PyCon APACTakanori Suzuki
 
Conference Conference 2013-05-17
Conference Conference 2013-05-17Conference Conference 2013-05-17
Conference Conference 2013-05-17Takanori Suzuki
 
kabepy: Python Bouldering Club
kabepy: Python Bouldering Clubkabepy: Python Bouldering Club
kabepy: Python Bouldering ClubTakanori Suzuki
 
Inside PyCon JP 2012 #bpstudy61
Inside PyCon JP 2012 #bpstudy61Inside PyCon JP 2012 #bpstudy61
Inside PyCon JP 2012 #bpstudy61Takanori Suzuki
 

Mehr von Takanori Suzuki (20)

Outside and inside of PyCon JP 2016
Outside and inside of PyCon JP 2016Outside and inside of PyCon JP 2016
Outside and inside of PyCon JP 2016
 
The tale of I and python / Python とのはなし
The tale of I and python / Python とのはなしThe tale of I and python / Python とのはなし
The tale of I and python / Python とのはなし
 
How to create PyCon JP
How to create PyCon JPHow to create PyCon JP
How to create PyCon JP
 
PyCon JP 2015 Closing speech
PyCon JP 2015 Closing speechPyCon JP 2015 Closing speech
PyCon JP 2015 Closing speech
 
Two sides of Python Engineer Training Book in PyCon mini Sapporo
Two sides of Python Engineer Training Book in PyCon mini SapporoTwo sides of Python Engineer Training Book in PyCon mini Sapporo
Two sides of Python Engineer Training Book in PyCon mini Sapporo
 
Two sides of "Python Engineer Training Book"
Two sides of "Python Engineer Training Book"Two sides of "Python Engineer Training Book"
Two sides of "Python Engineer Training Book"
 
Two sides of "Python Engineer Training Book"
Two sides of "Python Engineer Training Book"Two sides of "Python Engineer Training Book"
Two sides of "Python Engineer Training Book"
 
PyCon JP を支える技術/ Technology that underlie PyCon JP / BPStudy #88
PyCon JP を支える技術/ Technology that underlie PyCon JP / BPStudy #88PyCon JP を支える技術/ Technology that underlie PyCon JP / BPStudy #88
PyCon JP を支える技術/ Technology that underlie PyCon JP / BPStudy #88
 
Plone features and trends
Plone features and trendsPlone features and trends
Plone features and trends
 
Pycon JP 2014 Closing
Pycon JP 2014 ClosingPycon JP 2014 Closing
Pycon JP 2014 Closing
 
PyCon JP を支える技術 / Technologies that underlie PyCon JP
PyCon JP を支える技術 / Technologies that underlie PyCon JPPyCon JP を支える技術 / Technologies that underlie PyCon JP
PyCon JP を支える技術 / Technologies that underlie PyCon JP
 
PyCon JP 2014 Opening(14 sep)
PyCon JP 2014 Opening(14 sep)PyCon JP 2014 Opening(14 sep)
PyCon JP 2014 Opening(14 sep)
 
PyCon JP 2014 opening(13 sep)
PyCon JP 2014 opening(13 sep)PyCon JP 2014 opening(13 sep)
PyCon JP 2014 opening(13 sep)
 
Introduction of PyCon JP / TechLION vol.17
Introduction of PyCon JP / TechLION vol.17Introduction of PyCon JP / TechLION vol.17
Introduction of PyCon JP / TechLION vol.17
 
collective.socialpublish
collective.socialpublishcollective.socialpublish
collective.socialpublish
 
Pycon APAC 2013 closing
Pycon APAC 2013 closingPycon APAC 2013 closing
Pycon APAC 2013 closing
 
Introduction of PyCon APAC
Introduction of PyCon APACIntroduction of PyCon APAC
Introduction of PyCon APAC
 
Conference Conference 2013-05-17
Conference Conference 2013-05-17Conference Conference 2013-05-17
Conference Conference 2013-05-17
 
kabepy: Python Bouldering Club
kabepy: Python Bouldering Clubkabepy: Python Bouldering Club
kabepy: Python Bouldering Club
 
Inside PyCon JP 2012 #bpstudy61
Inside PyCon JP 2012 #bpstudy61Inside PyCon JP 2012 #bpstudy61
Inside PyCon JP 2012 #bpstudy61
 

「Python言語」はじめの一歩 / First step of Python