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
240
Sick && Insane Programming Practices
kevin1024
1
280
Introduction to Machine Learning
kevin1024
2
270
Other Decks in Programming
See All in Programming
JavaOne 2025: Advancing Java Profiling
jbachorik
1
300
私の愛したLaravel 〜レールを超えたその先へ〜
kentaroutakeda
11
3k
Return of the Full-Stack Developer
simas
PRO
1
300
AI時代のプログラミング教育 / programming education in ai era
kishida
22
19k
Compose Navigation実装の見通しを良くする
hiroaki404
0
160
WordPress Playground for Developers
iambherulal
0
120
AHC 044 混合整数計画ソルバー解法
kiri8128
0
290
Going Structural with Named Tuples
bishabosha
0
120
RCPと宣言型ポリシーについてのお話し
kokitamura
2
130
今から始めるCursor / Windsurf / Cline
kengo_hayano
0
100
技術好きなエンジニアが "リーダーへの進化" によって得たものと失ったもの
pospome
5
1.3k
아직도 SOLID 를 '글'로만 알고 계신가요?
sh1mj1
0
350
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Producing Creativity
orderedlist
PRO
344
40k
Thoughts on Productivity
jonyablonski
69
4.5k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.2k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
31
4.7k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
101
18k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.7k
Embracing the Ebb and Flow
colly
84
4.6k
Building an army of robots
kneath
304
45k
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