Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
KyutatsuNishiura
PDF, PPTX
932 views
mypy - 待望のPython3.9型ヒント対応
Python Charity Talks in Japan 2021.02のLT資料です。
Presentations & Public Speaking
◦
Read more
1
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 20
2
/ 20
3
/ 20
4
/ 20
5
/ 20
6
/ 20
7
/ 20
8
/ 20
9
/ 20
10
/ 20
11
/ 20
12
/ 20
13
/ 20
14
/ 20
15
/ 20
16
/ 20
17
/ 20
18
/ 20
19
/ 20
20
/ 20
More Related Content
PDF
機械学習モデルのサービングとは?
by
Sho Tanaka
PDF
第1回ROS勉強会発表資料 ROS+Gazeboではじめるロボットシミュレーション
by
akio19937
PDF
ChatGPTをシステムに組み込むためのプロンプト技法 #chatgptjp
by
K Kinzal
PDF
いまさら聞けないarmを使ったNEONの基礎と活用事例
by
Fixstars Corporation
PDF
JavaでCPUを使い倒す! ~Java 9 以降の CPU 最適化を覗いてみる~(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
by
NTT DATA Technology & Innovation
PDF
SSII2021 [TS1] Visual SLAM ~カメラ幾何の基礎から最近の技術動向まで~
by
SSII
PDF
ディープラーニングで音ゲー譜面を自動作成!
by
KLab Inc. / Tech
PDF
【NGINXセミナー】API ゲートウェイとしてのNGINX Plus活用方法
by
NGINX, Inc.
機械学習モデルのサービングとは?
by
Sho Tanaka
第1回ROS勉強会発表資料 ROS+Gazeboではじめるロボットシミュレーション
by
akio19937
ChatGPTをシステムに組み込むためのプロンプト技法 #chatgptjp
by
K Kinzal
いまさら聞けないarmを使ったNEONの基礎と活用事例
by
Fixstars Corporation
JavaでCPUを使い倒す! ~Java 9 以降の CPU 最適化を覗いてみる~(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
by
NTT DATA Technology & Innovation
SSII2021 [TS1] Visual SLAM ~カメラ幾何の基礎から最近の技術動向まで~
by
SSII
ディープラーニングで音ゲー譜面を自動作成!
by
KLab Inc. / Tech
【NGINXセミナー】API ゲートウェイとしてのNGINX Plus活用方法
by
NGINX, Inc.
What's hot
PPTX
第27回ロボティクスシンポジアスライド
by
Ryuichi Ueda
PDF
データセンターネットワークの構成について
by
MicroAd, Inc.(Engineer)
PPTX
OpenMPI入門
by
Yusuke Matsushita
PPTX
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
by
NTT DATA Technology & Innovation
PDF
ソフト高速化の専門家が教える!AI・IoTエッジデバイスの選び方
by
Fixstars Corporation
PDF
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
by
VirtualTech Japan Inc.
PDF
20190307 visualslam summary
by
Takuya Minagawa
PPTX
MLflowで学ぶMLOpsことはじめ
by
Kenichi Sonoda
PDF
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
by
Preferred Networks
PDF
これから機械学習エンジニアとして戦っていくみなさんへ ~MLOps というマインドセットについて~
by
MicroAd, Inc.(Engineer)
PDF
20230105_TITECH_lecture_ishizaki_public.pdf
by
Kazuaki Ishizaki
PDF
閉域網接続の技術入門
by
Masayuki Kobayashi
PDF
Jetson活用セミナー ROS2自律走行実現に向けて
by
Fixstars Corporation
PDF
確率的自己位置推定
by
Horiguchi Shuhei
PDF
BERTをブラウザで動かしたい!―MobileBERTとTensorFlow.js―
by
Shion Honda
PPTX
モデル高速化百選
by
Yusuke Uchida
PDF
OpenStack入門 2016/06/27
by
株式会社 NTTテクノクロス
PPTX
MS COCO Dataset Introduction
by
Shinagawa Seitaro
PDF
マルチコアを用いた画像処理
by
Norishige Fukushima
PDF
コスト最適化概論
by
RikiMakita
第27回ロボティクスシンポジアスライド
by
Ryuichi Ueda
データセンターネットワークの構成について
by
MicroAd, Inc.(Engineer)
OpenMPI入門
by
Yusuke Matsushita
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
by
NTT DATA Technology & Innovation
ソフト高速化の専門家が教える!AI・IoTエッジデバイスの選び方
by
Fixstars Corporation
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
by
VirtualTech Japan Inc.
20190307 visualslam summary
by
Takuya Minagawa
MLflowで学ぶMLOpsことはじめ
by
Kenichi Sonoda
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
by
Preferred Networks
これから機械学習エンジニアとして戦っていくみなさんへ ~MLOps というマインドセットについて~
by
MicroAd, Inc.(Engineer)
20230105_TITECH_lecture_ishizaki_public.pdf
by
Kazuaki Ishizaki
閉域網接続の技術入門
by
Masayuki Kobayashi
Jetson活用セミナー ROS2自律走行実現に向けて
by
Fixstars Corporation
確率的自己位置推定
by
Horiguchi Shuhei
BERTをブラウザで動かしたい!―MobileBERTとTensorFlow.js―
by
Shion Honda
モデル高速化百選
by
Yusuke Uchida
OpenStack入門 2016/06/27
by
株式会社 NTTテクノクロス
MS COCO Dataset Introduction
by
Shinagawa Seitaro
マルチコアを用いた画像処理
by
Norishige Fukushima
コスト最適化概論
by
RikiMakita
Similar to mypy - 待望のPython3.9型ヒント対応
PDF
静的型付け言語Python
by
kiki utagawa
PDF
Python と型ヒント (Type Hints)
by
Tetsuya Morimoto
PPTX
LLoT ランゲージアップデート Python
by
hirokiky
PPTX
Pythonでも型をつけたいだけの人生だった
by
hiroya akita
PDF
PyLadies Tokyo 二周年記念パーティ LT
by
Tetsuya Morimoto
PDF
20170131 python3 6 PEP526
by
masahitojp
静的型付け言語Python
by
kiki utagawa
Python と型ヒント (Type Hints)
by
Tetsuya Morimoto
LLoT ランゲージアップデート Python
by
hirokiky
Pythonでも型をつけたいだけの人生だった
by
hiroya akita
PyLadies Tokyo 二周年記念パーティ LT
by
Tetsuya Morimoto
20170131 python3 6 PEP526
by
masahitojp
mypy - 待望のPython3.9型ヒント対応
1.
mypy - 待望の3.9型ヒント対応 Kyutatsu
2.
自己紹介 • Kyutatsu (
西浦久達, にしうらきゅうたつ) • Webエンジニアをやってます。 • Python, Django, DRF, AWS… • https://qtatsu.hatenablog.com/ (はてブ: qtatsuの週報)
3.
新しい型ヒント、使った方がいい? • Python3.9から型ヒントの書き方に変更が入った。 • これからは、新しい書き方を使うべきなのか?
4.
型ヒントとは? • 参考資料 • 公式ドキュメント
https://docs.python.org/3/library/typing.html • PyCon2021 https://youtu.be/jLQLFFznPIo • あくまでヒント。 • 型を間違えても、処理が可能なら実行時にエラーは起きない。
5.
mypyとは? • コードの実行前に、型が正しいかチェックできる。 成功例 $ mypy
slide.py Success: no issues found in 1 source file • Ref. https://github.com/python/mypy
6.
mypyとは? • コードの実行前に、型が正しいかチェックできる。 $ mypy
slide.py slide.py:2: error: Unsupported operand types for + ("str" and "int") Found 1 error in 1 file (checked 1 source file) 型に問題があった! • Ref. https://github.com/python/mypy
7.
Python3.9: typingモジュールに新機能追加! ところが… mypy(0.790) $ mypy
slide.py slide.py:1: error: "list" is not subscriptable, use "typing.List" instead Found 1 error in 1 file (checked 1 source file) Python3.9の書き方でエラー(あってるのに…)
8.
Python3.9: typingモジュールに新機能追加! mypy(0.800)が1/22にリリース! $ mypy
slide.py Success: no issues found in 1 source file ところが…
9.
新しい記法を試してみる! mypy(0.800)が対応してくれた、 python3.9(3.10)の新記法を試してみる!
10.
組み込みlist python3.8以前 • 他、tuple, dict,
setなど • PEP585を反映 python3.9∼ 組み込みの list がそのまま利用できるようになった!
11.
組み込みlist $ mypy slide.py mypy==0.790 slide.py:1:
error: "list" is not subscriptable, use "typing.List" instead Found 1 error in 1 file (checked 1 source file)
12.
組み込みlist Success: no issues
found in 1 source file $ mypy slide.py mypy==0.800
13.
「 | 」で複数の型を指定 python3.9以前 python3.10∼
? PEP604を反映
14.
__future__でPython3.10の機能を先取りできる • Ref. https://docs.python.org/ja/3/library/__future__.html •
Python側は、3.7以降なら利用可能 • Mypy側は最新の0.800で対応済み!
15.
「 | 」で複数の型を指定 $
mypy slide.py mypy==0.790 slide.py:3: error: Invalid type comment or annotation Found 1 error in 1 file (checked 1 source file)
16.
「 | 」で複数の型を指定 Success:
no issues found in 1 source file $ mypy slide.py mypy==0.800
17.
古い記法はdeprecated • Python3.9のtypingモジュールでの変更は多め。 • 古い書き方は非推奨になっている! •
以下はhttps://docs.python.org/3/library/typing.htmlから引用 “class typing.List(list, MutableSequence[T]) ….(省略)….. バージョン 3.9 で非推奨: builtins.list は [] をサポートするようになり ました。 PEP 585 および Generic Alias Type を参照してください。
18.
新しい型ヒント、使った方がいい? • mypyが対応したので、3.9(3.10)記法で是非書くべき! • Pythonのバージョンが低くても、__future__を使えば 利用可能(3.7以上)。 •
このLTが終わったら、是非 ` pip install mypy==0.800` を実行してください!
19.
その他の改善 • https://mypy-lang.blogspot.com/2021/01/mypy-0800- released.html • https://docs.python.org/3/library/typing.html
20.
おわり ご静聴ありがとうございました!
Download