Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Cool New Features in Python 3.5
Search
Kevin McCarthy
November 07, 2015
Programming
1
340
Cool New Features in Python 3.5
Kevin McCarthy
November 07, 2015
Tweet
Share
More Decks by Kevin McCarthy
See All by Kevin McCarthy
Functors
kevin1024
1
140
Introduction to Programming
kevin1024
0
210
Processing Workshop
kevin1024
0
170
Processing Talk
kevin1024
0
230
Sick && Insane Programming Practices
kevin1024
1
270
Introduction to Machine Learning
kevin1024
2
270
Other Decks in Programming
See All in Programming
JavaScriptツール群「UnJS」を5分で一気に駆け巡る!
k1tikurisu
9
1.8k
楽しく向き合う例外対応
okutsu
0
120
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
0
150
Pulsar2 を雰囲気で使ってみよう
anoken
0
240
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
150
SpringBoot3.4の構造化ログ #kanjava
irof
2
990
GoとPHPのインターフェイスの違い
shimabox
2
190
DROBEの生成AI活用事例 with AWS
ippey
0
130
Spring gRPC について / About Spring gRPC
mackey0225
0
220
お前もAI鬼にならないか?👹Bolt & Cursor & Supabase & Vercelで人間をやめるぞ、ジョジョー!👺
taishiyade
6
4k
Multi Step Form, Decentralized Autonomous Organization
pumpkiinbell
1
740
ペアーズでの、Langfuseを中心とした評価ドリブンなリリースサイクルのご紹介
fukubaka0825
2
320
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
67
11k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
114
50k
Gamification - CAS2011
davidbonilla
80
5.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
4 Signs Your Business is Dying
shpigford
182
22k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
Six Lessons from altMBA
skipperchong
27
3.6k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
133
33k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
Transcript
Cool new features in Python 3.5
None
Unpacking >>> a,b,c = [1,2,3] >>> print(a) 1 >>> print(b)
2 >>> print(c) 3
Unpacking: LEVELED >>> a = [1,2,3] >>> b = [4,5,6]
>>> print([*a, *b]) [1,2,3,4,5,6] PEP 448
Build Dictionaries >>> defaults = {"database": "mysql"} >>> my_config =
{"database": "sqlite", "password": "cats"} PEP 448
Build Dictionaries >>> defaults.update(my_config) >>> print defaults {"database": "sqlite", "password":
"cats"} PEP 448
Build Dictionaries >>> print {**defaults, **my_config} {"database": "sqlite", "password": "cats"}
PEP 448
Call Functions with Unpacking >>> connect(**defaults, **my_config) PEP 448
math.isclose() >>> a = 1.0 >>> b = 1.00000000001 >>>
math.isclose(a,b) True >>> math.isclose(1.0, 1.1) False >>> math.isclose(1.0, 1.01, abs_tol=.1) True PEP 485
>>> import math >>> math.pow(a, 2) + math.pow(b, 2) ==
math.pow(c,2)
>>> a**2 + b**2 == c**2
import numpy as np from numpy.linalg import inv, solve #
Using dot function: S = np.dot((np.dot(H, beta) - r).T, np.dot(inv(np.dot(np.dot(H, V), H.T)), np.dot(H, beta) - r))
@ matrix multiplication operator @ >>> S = (H @
beta - r).T @ \ inv(H @ V @ H.T) @ (H @ beta - r) PEP 465
os.scandir() PEP 471
yield from (python 3.4) @asyncio.coroutine def view(request): data = yield
from db_query(request.q) more = yield from db_query(request.p) return yield from render(data, more) PEP 380
async and await async def view(request): data = await db_query(request.q)
more = await db_query(request.p) return await render(data, more) PEP 492
type annotations def hello(name: str) -> str: return "hello, {}".format(name)
PEP 484
type annotations def hello(name: str) -> str: return "hello, {}".format(name)
def greet(name): print greeting(name) PEP 484 types!
gradual typing def hello(name: str) -> str: return "hello, {}".format(name)
def greet(name): print(greeting(name)) types! no types! PEP 484
import typing from typing import List def combine(input: List[str]) ->
int: return input.join() PEP 484
much, much more! PEP 461, 479… • subprocess.run() • collections.OrderedDict
4-100 times faster • bytes % args, bytearray % args • functools.lru_cache() 10-25x faster • StopIteration handling inside generators better • A new installer for Windows
Thanks! https://docs.python.org/3/whatsnew/3.5.html