$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Python Type Hints
Search
José Padilla
March 15, 2018
0
560
Python Type Hints
5min talk on Python Type Hints. Presented at newhaven.io
José Padilla
March 15, 2018
Tweet
Share
More Decks by José Padilla
See All by José Padilla
Python, Government, and Contracts
jpadilla
0
57
Python, Government, and Contracts
jpadilla
0
5k
Developer Ergonomics
jpadilla
0
2.1k
DjangoCon - JSON Web Tokens
jpadilla
15
11k
BFTW: The Backend
jpadilla
4
210
eventos
jpadilla
0
190
JWT
jpadilla
2
450
Ember.js + Django
jpadilla
3
2.1k
UPRB Basic Workshop
jpadilla
2
220
Featured
See All Featured
A designer walks into a library…
pauljervisheath
210
24k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
710
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Practical Orchestrator
shlominoach
190
11k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Into the Great Unknown - MozCon
thekraken
40
2.2k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
For a Future-Friendly Web
brad_frost
180
10k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
390
Transcript
Type Hints
José Padilla
Work Training
Work Open Source
PEP 3107
None
PEP 484
None
no type checking happens at runtime
static analysis refactoring runtime type checking code generation
static analysis refactoring runtime type checking code generation
None
Common built-in types
None
None
None
None
None
None
None
None
None
None
None
None
None
Generics
None
None
mypy
static type checker
$ pip install mypy
$ python app.py
None
$ python app.py f 1 Traceback (most recent call last):
File "app.py", line 12, in <module> print(first(1)) # TypeError File "app.py", line 7, in first return seq[0] TypeError: 'int' object is not subscriptable
$ mypy app.py
$ mypy app.py main.py:12: error: Argument 1 to "first" has
incompatible type "int"; expected "Sequence[<nothing>]"
None
mypy-lang.org
Python will remain a dynamically typed language
Thanks! jpadilla.com twitter.com/@jpadilla_ github.com/jpadilla