SlideShare a Scribd company logo
Python	
  3.2	
ふるかわとおる	
  
株式会社ビープラウド	
  
@torufurukawa	
  #bucho	
  
もうすぐリリース	
•  11/13	
  alpha	
  4	
  
•  12/04	
  beta	
  1	
  
•  12/18	
  beta	
  2	
  
•  01/08	
  RC1	
  
•  01/22	
  RC2	
  
•  02/05	
  release
Python	
  Language	
  Moratorium	
  	
  	
Python	
  3.1	
  リリース後2年間は	
  
文法、セマンティクス、	
  
ビルトインを変更しない 	
  
[PEP	
  3003]	
  
3.2	
  では言語に変更がない	
•  2010/06/27	
  Python	
  3.1	
  
•  2011/02/05	
  Python	
  3.2	
  
•  2012/06/27	
  モラトリアム終了	
  
FAQ:	
  Python	
  3.2	
  使うべき?
答:	
  あなた次第	
hOp://wiki.python.org/moin/Python2orPython3	
  
もっともな言い訳が必要
いくつかネタを	
•  logging	
  
•  .pyc	
  
•  Japanese	
  characters	
  
	
  
logging	
  モジュール	
•  標準ライブラリ	
  
•  What’s	
  New	
  in	
  Python	
  3.2	
  の第1項目
Before:	
  API	
  or	
  .ini	
  ファイルで設定	
my_logger	
  =	
  
	
  	
  	
  	
  logging.getLogger('MyLogger')	
  
my_logger.setLevel(logging.DEBUG)	
  
	
handler	
  =	
  
	
  	
  	
  	
  logging.handlers.RotaangFileHandler(	
  
	
  	
  	
  	
  	
  	
  	
  	
  LOG_FILENAME,	
  maxBytes=20,	
  
	
  	
  	
  	
  	
  	
  	
  	
  backupCount=5)	
  
	
my_logger.addHandler(handler)	
  
	
[handlers]	
  
keys=consoleHandler	
  
	
[formaOers]	
  
keys=simpleFormaOer	
  
	
[logger_root]	
  
level=DEBUG	
  
handlers=consoleHandler	
  
	
[logger_simpleExample]	
  
level=DEBUG	
  
handlers=consoleHandler	
  
qualname=simpleExample	
  
propagate=0
Ager:	
  辞書で設定	
{"version":	
  1,	
  
	
  "formaOers":	
  {"brief":	
  {"format":	
  "%(levelname)-­‐8s:	
  %(name)-­‐15s:	
  %(message)s"},	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "full":	
  {"format":	
  "%(ascame)s	
  %(name)-­‐15s	
  %(levelname)-­‐8s	
  %(message)s"},	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  },	
  
	
  "handlers":	
  {"console":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "class":	
  "logging.StreamHandler",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "formaOer":	
  "brief",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "level":	
  "INFO",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "stream":	
  "ext://sys.stdout"},	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "console_priority":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "class":	
  "logging.StreamHandler",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "formaOer":	
  "full",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "level":	
  "ERROR",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "stream":	
  "ext://sys.stderr"},	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  },	
  
	
  "root":	
  {"level":	
  "DEBUG",	
  "handlers":	
  ["console",	
  "console_priority"]}}
辞書使えるよ!	
  
JSON	
  とかで設定できるね	
  
logging	
  しようぜ	
辞書なしで使ってるし	
  
logging	
  使わねーし
.pyc	
  はバージョンごとに生成
Before:	
  foo.py	
  à foo.pyc	
•  複数バージョンで同じモジュールをインポート
すると .pyc	
  が再生成される	
  
	
  
Ager:	
  Python	
  のバージョンごとに pyc	
__pycache__/foo.cpython-­‐32.pyc
スピンアップ短縮に	
  
期待!	
  
スクリプト共有しないし	
  
日本語ファイル名
Before:	
  	
  
ファイル名のエンコーディングが危うい	
•  UTF-­‐8	
  想定	
  
•  Windows	
  では、mbcs	
  でエンコードできなくて
も ‘ignore’
Ager:	
  システムロケール	
•  システムロケールのエンコーディングを使う	
  
•  Windows	
  では mbcs	
  エンコードできなければ
エラー	
  
•  os.fsencode()	
  
•  os.fsdecode()	
  
日本語ファイル名を使う	
  
アプリがしがし	
  
開発するぜ	
  
もう対処してるし
いくつかネタを紹介しました	
•  logging	
  
•  .pyc	
  
•  Japanese	
  file	
  names	
  
使う理由を教えてください	
•  使わない理由は分かってます	
  
•  あえて、使ってる人は、何やってるの?	
  

More Related Content

PDF
NPCA夏合宿 2014 講義資料
PDF
about Tcpreplay
PDF
Sniffing BitTorrent DHT ~人はBTで何を落とすのか~
PDF
Scapyで作る・解析するパケット
PDF
Scapy presentation Remake(訂正)
PPTX
Ren’pyの御紹介
PDF
hpingで作るパケット
PDF
Scapy presentation
NPCA夏合宿 2014 講義資料
about Tcpreplay
Sniffing BitTorrent DHT ~人はBTで何を落とすのか~
Scapyで作る・解析するパケット
Scapy presentation Remake(訂正)
Ren’pyの御紹介
hpingで作るパケット
Scapy presentation

What's hot (20)

PDF
import dpkt したよ #ssmjp 2014/02/28
PDF
UEFI向け自作OSの紹介
PDF
x86_64向け自作OSの紹介
PDF
ちょっと古いマシンにLinuxを
PDF
野良ビルドから見たGentoo
PDF
197x Timer with Your Messages
PDF
Xeon dとlagopusと、pktgen dpdk
PPTX
rpi_handson_2
PDF
Lagopus performance
PDF
Lagopus as open flow hybrid switch 実践編
PDF
Sounds Like Common Lisp - ゼロからはじめるサウンドプログラミング
PDF
Arch TCP/IP BOOTP
PDF
FreeBSD jail+vnetと戯れた話
PDF
Lagopus 0.2.2
PPTX
3次元SLAMは誰でもできるよ。そう、TX2とTurtleBot3ならね。
PDF
Ryu+Lagopusで OpenFlowの動きを見てみよう
PDF
TurtleBot3でROSを始めよう
PDF
「Turtlebot3の紹介」 ROS Japan UG #10 勉強会
PDF
Lagopus どれだけ速いのか
ODP
tcpdumpとtcpreplayとtcprewriteと他。
import dpkt したよ #ssmjp 2014/02/28
UEFI向け自作OSの紹介
x86_64向け自作OSの紹介
ちょっと古いマシンにLinuxを
野良ビルドから見たGentoo
197x Timer with Your Messages
Xeon dとlagopusと、pktgen dpdk
rpi_handson_2
Lagopus performance
Lagopus as open flow hybrid switch 実践編
Sounds Like Common Lisp - ゼロからはじめるサウンドプログラミング
Arch TCP/IP BOOTP
FreeBSD jail+vnetと戯れた話
Lagopus 0.2.2
3次元SLAMは誰でもできるよ。そう、TX2とTurtleBot3ならね。
Ryu+Lagopusで OpenFlowの動きを見てみよう
TurtleBot3でROSを始めよう
「Turtlebot3の紹介」 ROS Japan UG #10 勉強会
Lagopus どれだけ速いのか
tcpdumpとtcpreplayとtcprewriteと他。

Similar to Python32 pyhackathon-201011 (20)

PPT
Python languageupdate (2004)
PDF
Protocol Buffers 入門
PPTX
210728 mpy
PPTX
2017/12/21 虎の穴 Python勉強会
PDF
「Python言語」はじめの一歩 / First step of Python
PDF
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
PDF
osc_tokyo20100226
PDF
Pythonのすすめ
PDF
Pythonを取り巻く開発環境 #pyconjp
PDF
20130824 Lightweight Language "Go" @LL matsuri
PPTX
Getting Started with Graph Database with Python
PDF
How to run P4 BMv2
PDF
深層学習ライブラリのプログラミングモデル
PDF
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
PDF
Python × Herokuで作る 雑談slack bot
PDF
Pyconjp2014_implementations
PPTX
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
PPTX
Programming AWS with Python
ODP
Sourcecode Reading Workshop2010
PPTX
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
Python languageupdate (2004)
Protocol Buffers 入門
210728 mpy
2017/12/21 虎の穴 Python勉強会
「Python言語」はじめの一歩 / First step of Python
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
osc_tokyo20100226
Pythonのすすめ
Pythonを取り巻く開発環境 #pyconjp
20130824 Lightweight Language "Go" @LL matsuri
Getting Started with Graph Database with Python
How to run P4 BMv2
深層学習ライブラリのプログラミングモデル
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
Python × Herokuで作る 雑談slack bot
Pyconjp2014_implementations
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
Programming AWS with Python
Sourcecode Reading Workshop2010
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識

More from Toru Furukawa (11)

PDF
Twitter 広告と API を組み合わせたインタラクティブなキャンペーン
PDF
My client wanted their apps synced, and I made it with Go
PPTX
Introduction to Python 3.4 as of beta 1
PDF
Test Failed, Then...
PDF
おまえらこのライブラリ使ってないの? m9 (2013-07)
PDF
Mock and patch
PDF
Trying Continuous Delivery - pyconjp 2012
KEY
Python 3.3 チラ見
PDF
Django
PPTX
Python 2.7
PDF
BPStudy#34 導入
Twitter 広告と API を組み合わせたインタラクティブなキャンペーン
My client wanted their apps synced, and I made it with Go
Introduction to Python 3.4 as of beta 1
Test Failed, Then...
おまえらこのライブラリ使ってないの? m9 (2013-07)
Mock and patch
Trying Continuous Delivery - pyconjp 2012
Python 3.3 チラ見
Django
Python 2.7
BPStudy#34 導入

Python32 pyhackathon-201011