• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Python 3.3 チラ見
 

Python 3.3 チラ見

on

  • 3,284 views

 

Statistics

Views

Total Views
3,284
Views on SlideShare
2,959
Embed Views
325

Actions

Likes
5
Downloads
12
Comments
0

6 Embeds 325

http://blog.livedoor.jp 317
http://us-w1.rockmelt.com 3
http://cache.yahoofs.jp 2
https://twimg0-a.akamaihd.net 1
http://webcache.googleusercontent.com 1
https://abs.twimg.com 1

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

Python 3.3 チラ見 Python 3.3 チラ見 Presentation Transcript

  • Python 3.3 ふるかわとおる
  • おまえ誰よ• @torufurukawa• 古川亨• 株式会社バスキュール号
  • リリースが近づいてまいりました 3.3.0 alpha 1: March 3, 2012 3.3.0 alpha 2: March 31, 2012 3.3.0 alpha 3: April 28, 2012 3.3.0 alpha 4: May 26, 2012 3.3.0 beta 1: June 23, 2012 (No new features beyond this point.) 3.3.0 beta 2: July 14, 2012 3.3.0 candidate 1: July 28, 2012 3.3.0 candidate 2: August 11, 2012 3.3.0 final: August 18, 2012
  • リリースが近づいてまいりました 3.3.0 alpha 1: March 3, 2012 3.3.0 alpha 2: March 31, 2012 3.3.0 alpha 3: April 28, 2012 3.3.0 alpha 4: May 26, 2012 3.3.0 beta 1: June 23, 2012 (No new features beyond this point.) 3.3.0 beta 2: July 14, 2012 3.3.0 candidate 1: July 28, 2012 3.3.0 candidate 2: August 11, 2012 3.3.0 final: August 18, 2012
  • リリースが近づいてまいりました 3.3.0 alpha 1: March 3, 2012 3.3.0 alpha 2: March 31, 2012 3.3.0 alpha 3: April 28, 2012 3.3.0 alpha 4: May 26, 2012 3.3.0 beta 1: June 23, 2012 (No new features beyond this point.) 3.3.0 beta 2: July 14, 2012 3.3.0 candidate 1: July 28, 2012 3.3.0 candidate 2: August 11, 2012 3.3.0 final: August 18, 2012
  • チラ見
  • 【u】文字列【またぁ?】
  • u
  • uPython 3.2
  • uPython 3.2>>> ほげ
  • uPython 3.2>>> ほげほげ
  • uPython 3.2>>> ほげほげ>>> uほげ
  • uPython 3.2>>> ほげほげ>>> uほげ File "<stdin>", line 1
  • uPython 3.2>>> ほげほげ>>> uほげ File "<stdin>", line 1 uほげ
  • uPython 3.2>>> ほげほげ>>> uほげ File "<stdin>", line 1 uほげ ^
  • uPython 3.2>>> ほげほげ>>> uほげ File "<stdin>", line 1 uほげ ^SyntaxError: invalid syntax
  • uPython 3.2 Python 3.3>>> ほげほげ>>> uほげ File "<stdin>", line 1 uほげ ^SyntaxError: invalid syntax
  • uPython 3.2 Python 3.3>>> ほげ >>> ほげほげ>>> uほげ File "<stdin>", line 1 uほげ ^SyntaxError: invalid syntax
  • uPython 3.2 Python 3.3>>> ほげ >>> ほげほげ ほげ>>> uほげ File "<stdin>", line 1 uほげ ^SyntaxError: invalid syntax
  • uPython 3.2 Python 3.3>>> ほげ >>> ほげほげ ほげ>>> uほげ >>> uほげ File "<stdin>", line 1 uほげ ^SyntaxError: invalid syntax
  • uPython 3.2 Python 3.3>>> ほげ >>> ほげほげ ほげ>>> uほげ >>> uほげ File "<stdin>", line 1 ほげ uほげ ^SyntaxError: invalid syntax
  • uPython 3.2 Python 3.3>>> ほげ >>> ほげほげ ほげ>>> uほげ >>> uほげ File "<stdin>", line 1 ほげ uほげ >>> ほげ == uほげ ^SyntaxError: invalid syntax
  • uPython 3.2 Python 3.3>>> ほげ >>> ほげほげ ほげ>>> uほげ >>> uほげ File "<stdin>", line 1 ほげ uほげ >>> ほげ == uほげ ^ TrueSyntaxError: invalid syntax
  • non-BMP Unicode 文字
  • non-BMP Unicode 文字Python 3.2>>> U0001F344>>> len(x)2>>> x[0], x[1](ud83c, udf4c)
  • non-BMP Unicode 文字Python 3.2 Python 3.3>>> U0001F344 >>> x = U0001F344>>> len(x) >>> len(x)2 1>>> x[0], x[1] >>> x[0](ud83c, udf4c) ud83c
  • 【yield】サブジェネレータ【next】
  • >>> def g():
  • >>> def g():... yield START
  • >>> def g():... yield START... for i in range(5):
  • >>> def g():... yield START... for i in range(5):... yield i
  • >>> def g():... yield START... for i in range(5):... yield i... yield END
  • >>> def g():... yield START... for i in range(5):... yield i... yield END...
  • >>> def g():... yield START... for i in range(5):... yield i... yield END...>>> list(g())
  • >>> def g():... yield START... for i in range(5):... yield i... yield END...>>> list(g())[START, 0, 1, 2, 3, 4, END]
  • サブジェネレータ
  • サブジェネレータ>>> def g():
  • サブジェネレータ>>> def g():... yield START
  • サブジェネレータ>>> def g():... yield START... yield from range(5)
  • サブジェネレータ>>> def g():... yield START... yield from range(5)... yield END
  • サブジェネレータ>>> def g():... yield START... yield from range(5)... yield END...
  • サブジェネレータ>>> def g():... yield START... yield from range(5)... yield END...>>> list(g())
  • サブジェネレータ>>> def g():... yield START... yield from range(5)... yield END...>>> list(g())[START, 0, 1, 2, 3, 4, END]
  • 細々ときれいになる
  • IOError のヒエラルキーがひどい+-- EnvironmentError +-- IOError +-- io.BlockingIOError +-- io.UnsupportedOperation +-- socket.error +-- socket.gaierror +-- socket.herror +-- socket.timeout +-- OSError +-- VMSError +-- WindowsError +-- mmap.error+-- select.error
  • シンプルに+-- OSError (replacing IOError, WindowsError, EnvironmentError, etc.) +-- io.BlockingIOError +-- io.UnsupportedOperation +-- socket.gaierror +-- socket.herror +-- socket.timeout
  • distutils から packaging へ
  • さよならOS/2, VMS, Windows 2000
  • 以上、チラ見せでした
  • まだ控えている PEP がありますPEP 362: Function Signature ObjectPEP 395: Module AliasingPEP 397: Python launcher for WindowsPEP 402: Simplified Package Layout (likely a new PEP derived from it)PEP 405: Python Virtual EnvironmentsPEP 412: Key-Sharing DictionaryPEP 3143: Standard daemon process libraryPEP 3144: IP Address manipulation libraryOther planned large-scale changes:Addition of the "mock" libraryAddition of the C decimal implementationAddition of the "regex" moduleEmail version 6Implementing __import__ using importlibA standard event-loop interface (PEP by Jim Fulton pending)Breaking out standard library and docs in separate repos?
  • PEP 3143: Standarddaemon process library import daemon from spam import do_main_program with daemon.DaemonContext(): do_main_program()
  • PEP 405: Python Virtual Environmentspython3 -m venv /wozozo
  • Python 3.3 をよろしく