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
Python Type Hints
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
José Padilla
March 15, 2018
620
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Python Type Hints
5min talk on Python Type Hints. Presented at newhaven.io
José Padilla
March 15, 2018
More Decks by José Padilla
See All by José Padilla
Python, Government, and Contracts
jpadilla
0
82
Python, Government, and Contracts
jpadilla
0
5.2k
Developer Ergonomics
jpadilla
0
2.1k
DjangoCon - JSON Web Tokens
jpadilla
15
11k
BFTW: The Backend
jpadilla
4
240
eventos
jpadilla
0
230
JWT
jpadilla
2
480
Ember.js + Django
jpadilla
3
2.2k
UPRB Basic Workshop
jpadilla
2
250
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1369
210k
So, you think you're a good person
axbom
PRO
2
2.1k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
230
Typedesign – Prime Four
hannesfritz
42
3.2k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
490
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
260
Optimizing for Happiness
mojombo
378
71k
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
A Modern Web Designer's Workflow
chriscoyier
698
190k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
520
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