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
便利に使おう変数アノテーション -typing.py との楽しいお付き合い-
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Takumi Sueda
September 08, 2017
4
9.3k
便利に使おう変数アノテーション -typing.py との楽しいお付き合い-
PyCon JP 2017 Conference Day 1
Takumi Sueda
September 08, 2017
Tweet
Share
More Decks by Takumi Sueda
See All by Takumi Sueda
これまでのハード遊びまとめ ノンストップ40分スペシャル
puhitaku
1
180
令和最新版 OpenWrt を 22 年前のルーターで動かす
puhitaku
0
5.2k
組み込みLinuxの時系列
puhitaku
4
1.8k
電子辞書にステータスバーを実装する
puhitaku
0
350
知育おもちゃの遊び方 Lv. 999
puhitaku
5
3.2k
ルーターでプレゼンする
puhitaku
1
7k
AST as Black Magic
puhitaku
0
180
次世代の足下を舗装するコミュニティ
puhitaku
5
1.9k
電子辞書で学ぶ Linux のサスペンド
puhitaku
0
760
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
331
21k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
270
Producing Creativity
orderedlist
PRO
348
40k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
210
Thoughts on Productivity
jonyablonski
74
5k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
110
Everyday Curiosity
cassininazir
0
130
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Transcript
كٝٔח⢪ֲֶ㢌侧،ظذ٦ءّٝ UZQJOHQZהך嚂׃ְֶ➰ֹさְ .BOJQVMBUJOH7BSJBCMF"OOPUBUJPOTPO3VOUJNF 'PSBZFUBOPUIFSVTBHFPGUZQFIJOUT 5BLVNJ4VFEB 'VMMFS *OD%FWFMPQFS
)J 5BLVNJ4VFEB QVIJUBLV 'VMMFS *OD 1ZUIPO(PMBOH 8FC$SBXMFST"84*OGSBTUSVDUVSF 4PMEFSJOH&NCFEEFE4ZTUFN
50$ ˖ 5IFIJTUPSZPGBOOPUBUJPOT ˖ 6TFBOOPUBUJPOTJOSVOUJNF 8IZ ˖ 1MBOPGQPSUJOH(PMBOH+40/VONBSTIBMFSJOUP1ZUIPO ˖
3FBEWBSJBCMFBOOPUBUJPOT ˖ 8IBUBSFHFOFSJDUZQFT ˖ 1SBDUJDF"OBUPNZPGHFOFSJDUZQFT ˖ JGFMTFGPSUZQFJEFOUJDBUJPO
5IFIJTUPSZPGBOOPUBUJPOT _،ظذ٦ءّٝך娖〷_
5IFIJTUPSZPGBOOPUBUJPOT 1&1 1&1 1&1 'VODUJPO "OOPUBUJPOT 7BSJBCMF "OOPUBUJPOT 4ZOUBY
4FNBOUJDT 4ZOUBY 4FNBOUJDT Ԩ ˌ ˌ ˌ ˌ Ԩ ӛ Ԩ ˌ ˌ Ԩ ˌ %FD 4FQ "VH
1&1 5IFIJTUPSZPGBOOPUBUJPOT 1&1 1&1 'VODUJPO "OOPUBUJPOT 7BSJBCMF "OOPUBUJPOT 4ZOUBY
4FNBOUJDT 4ZOUBY 4FNBOUJDT Ԩ ˌ ˌ ˌ ˌ Ԩ ӛ Ԩ ˌ ˌ Ԩ ˌ %FD 4FQ "VH
5IFIJTUPSZPGBOOPUBUJPOT1&1 'VOD "OOPU 7BS "OOPU 4ZOUBY 4FNBOUJDT 4ZOUBY 4FNBOUJDT
Ԩ ˌ ˌ ˌ 1&1 1&1JOUSPEVDFEUIFTZOUBYPGGVODUJPOBOOPUBUJPOT %FOJOHTFNBOUJDTXBTMFGUUPUIJSEQBSUZMJCSBSJFT 5IJTJTCFDBVTF JONZHVFTT EFOJOHJUXBTUPPIFBWZBOESJTLZ
1&1 5IFIJTUPSZPGBOOPUBUJPOT 1&1 1&1 'VODUJPO "OOPUBUJPOT 7BSJBCMF "OOPUBUJPOT 4ZOUBY
4FNBOUJDT 4ZOUBY 4FNBOUJDT Ԩ ˌ ˌ ˌ ˌ Ԩ ӛ Ԩ ˌ ˌ Ԩ ˌ %FD 4FQ "VH
5IFIJTUPSZPGBOOPUBUJPOT1&1 'VOD "OOPU 7BS "OOPU 4ZOUBY 4FNBOUJDT 4ZOUBY 4FNBOUJDT
Ԩ ˌ 1&1 1&1JOUSPEVDFEUIFTFNBOUJDTPGBOOPUBUJPOT 5IJTXBTHSFBUMZIFMQFECZUIFHSPXUIPGNZQZ BTUBUJDUZQF DIFDLFS UIVTJUJTTUSPOHMZJOTQJSFECZNZQZ Ԩ ӛ
1&1 5IFIJTUPSZPGBOOPUBUJPOT 1&1 1&1 'VODUJPO "OOPUBUJPOT 7BSJBCMF "OOPUBUJPOT 4ZOUBY
4FNBOUJDT 4ZOUBY 4FNBOUJDT Ԩ ˌ ˌ ˌ ˌ Ԩ ӛ Ԩ ˌ ˌ Ԩ ˌ %FD 4FQ "VH
5IFIJTUPSZPGBOOPUBUJPOT1&1 'VOD "OOPU 7BS "OOPU 4ZOUBY 4FNBOUJDT 4ZOUBY 4FNBOUJDT
ˌ 1&1 1&1JOUSPEVDFEOFXTZOUBYPGWBSJBCMFBOOPUBUJPOT "MNPTUBMMPGPCKFDUTBSFOPXBCMFUPCFBOOPUBUFEBOE UIFBOOPUBUJPOTCFDBNFSFBEBCMFJOSVOUJNF Ԩ ˌ ˌ
6TFBOOPUBUJPOTJOSVOUJNF 8IZ _،ظذ٦ءّٝ㹋遤儗ח⢪ֲ˘זד_
"OOPUBUJPOTJOSVOUJNF 5IFPSJHJOBMQVSQPTFPGBOOPUBUJPOTJTGPSTUBUJDDPDFBOBMZTJT XIJDI NFBOTJUˏTSFBEBOEVTFE#&'03&SVOJOOHUIFDPEF OPUJOSVOUJNF
"OOPUBUJPOTJOSVOUJNF #VUTUJMMJUˏTBDDFTTJCMFJOSVOUJNFCFDBVTF1&1EFOFEJU $BOˏUXFNBLFHPPEVTFPGUIFN
"OOPUBUJPOTJOSVOUJNF *ˏWFHPUBOJEFB 1PSUJOH+40/VONBSTIBMFSPG(PMBOHJOUP1ZUIPO )FSFJOBGUFSˑ6ONBSTIBMFS˒ ❤
*EFBQPSUJOH(PMBOHˏT+40/VONBSTIBMFS 'PSUIPTFXIPEPOˏULOPX(PMBOH 8IBUˏTˑVONBSTIBMFS VONBSTIBM WFSC UPEFTFSJBMJ[F+40/FUD VONBSTIBMFS OPVO EFTFSJBMJ[FS&RVJWBMFOUUPKTPOMPBE
VONBSTIBMMFS
*EFBQPSUJOH(PMBOHˏT+40/VONBSTIBMFS 6ONBSTIBMFSJTUSVMZTNBSUJUDBODBTU+40/PCKFDUJOUP(PMBOHˏT TUSVDU TJNJMBSUIJOHPG1ZUIPOˏTDMBTT XIJMFEPJOHUZQFDIFDL FWFOJUIBTOFTUFETUSVDUBOEBSSBZ (PMBOHTUSVDU +40/
*EFBQPSUJOH(PMBOHˏT+40/VONBSTIBMFS "OEUIFOBDDFTTMJLFUIJT 1SJOUJOHVONBSTIBMFE+40/ˏTWBMVF 0VUQVU
*EFBQPSUJOH(PMBOHˏT+40/VONBSTIBMFS $MFBSBOETJNQMFDPEF FYQMJDJUEBUBTUSVDUVSF BOETBGFJOUFSNTPGUZQFTBGFUZ *UˏTNPSFQZUIPOJDUIBO1ZUIPOˏTKTPOMJCSBSZ*TOˏUJU
*EFBQPSUJOH(PMBOHˏT+40/VONBSTIBMFS +40/IBTPOMZTJNQMFMJUFSBMT TUSVDUVSFTUIVTUIFZDBOCF IBOEMFEXJUICVJMUJOT #VU*XBOUUPEPMJLF ˖ $BTU+40/JOUPOFTUFEDMBTT ˖ )BOEMFHFOFSJDUZQFTMJLF-JTU<TUS>BOE6OJPO DPSSFDUMZ
8FIBWFUPJEFOUJGZCVJMUJOT HFOFSJDT BOEDVTUPNUZQFT
*EFBQPSUJOH(PMBOHˏT+40/VONBSTIBMFS 4PUIJTJTUIFNBJONPUJWBUJPOPGUIJTQSFTFOUBUJPO -FUˏTNPWFPO
3FBEWBSJBCMFBOOPUBUJPOTPOSVOUJNF _،ظذ٦ءّٝ铣ד״ֲ_
3FBEWBSJBCMFBOOPUBUJPOTPOSVOUJNF 6TFUZQJOHHFU@UZQF@IJOUT UPSFBEBOOPUBUJPOTGSPNDMBTT *GZPVQBTTNPEVMFUPJU JUXJMMIBOEMFBTJUTIPVME
3FBEWBSJBCMFBOOPUBUJPOTPOSVOUJNF 8IZOPU@@BOOPUBUJPOT@@CVUUZQJOHHFU@UZQF@IJOUT "DDPSEJOHUPUIFEPDTUSJOHPGHFU@UZQF@IJOUT 5IJTJTPGUFOUIFTBNFBTPCK@@BOOPUBUJPOT@@ CVUJUIBOEMFT GPSXBSESFGFSFODFTFODPEFEBTTUSJOHMJUFSBMT 䪳鏬ֿכ׃ל׃לPCK@@BOOPUBUJPOT@@הずָׄծ
HFU@UZQF@IJOUTכ俑㶵ד剅ַ倯撑姻׃ֻ䪔ֲկ
8IBUBSFHFOFSJDUZQFT _آؑطٔحؙ㘗הכ_
8IBUBSFHFOFSJDUZQFT ˑUZQJOH˒NPEVMFIBTHFOFSJDUZQFTEFSJWFEGSPNTFWFSBMNPEVMFT MJLFCVJMUJOT DPMMFDUJPOT FUD ˖ MJTU ˖ TFU
˖ EJDU ˖ UVQMF FHGSPNCVJMUJOT ˖ -JTU<5> ˖ 4FU<5> ˖ %JDU<5 5> ˖ 5VQMF<5 5 > GSPNUZQJOH 1MBJOUZQF BEEJUJPOBMUZQFJOGP HFOFSJDUZQF 1MBJOCVJMUJOUZQF
8IBUBSFHFOFSJDUZQFT 5IFSFBSFNPSFUZQFTXIJDIBSFNPSFBOOPUBUJPOTQFDJD ˖ "OZ ˖ 6OJPO<9 :> ˖ 0QUJPOBM<9>
FUD˘ GSPNUZQJOH (FOFSJDUZQFTGPSBOOPUBUJPOT "DDFQUTBSCJUSBSZUZQFT "DDFQUTFJUIFS9PS: "DDFQUTFJUIFS9PS/POF
8IBUBSFHFOFSJDUZQFT 5IVT HFOFSJDUZQFTDBOEFTDSJCFBEEJUJPOBMUZQFJOGPSNBUJPOGPS TUBUJDDPEFBOBMZTJTBOETPPO #FGPSF "GUFS ˒"IB BSHJTBMJTUPGTUSJOHT˒ ˒8IBUˏTJOTJEFBSH
˒
8IBUBSFHFOFSJDUZQFT 4P IPXDBOXFHFUTUSGSPN-JTU<TUS>
1SBDUJDF"OBUPNZPGHFOFSJDUZQFT _آؑطٔحؙ㘗鍑ⶅ׃ג״ֲ_
"OBUPNZPGHFOFSJDUZQFT-JTU<TUS> %JHUIF.30 .30.FUIPE3FTPMVUJPO0SEFS ًاحس鍑寸갫䎷
"OBUPNZPGHFOFSJDUZQFT-JTU<TUS> 5IFPSJHJOBM (FOFSJD"#$T "CTUSBDU#BTF$MBTT 3PPUPGHFOFSJDTUZQJOH(FOFSJD -JTU<TUS>
"OBUPNZPGHFOFSJDUZQFT-JTU<TUS> -JTU<TUS>UZQJOH(FOFSJDT 5IFSFJTOPUIJOHUPEPXJUIUZQJOH(FOFSJDT CVUJUIBTUZQJOH(FOFSJD.FUBGPSJUTNFUBDMBTT -FUˏTEJWFJOUP(FOFSJD.FUB
"OBUPNZPGHFOFSJDUZQFT-JTU<TUS> -JTU<TUS>UZQJOH(FOFSJDTUZQJOH(FOFSJD.FUB@@HFUJUFN@@ ˗˗ ˗˗ QBSBNTIBTTUS Ύ$PQZQBSBNTUPBSHT Ώ$SFBUFOFXJOTUBODF ΐ1BTTBSHTWJBLXBSHT
"OBUPNZPGHFOFSJDUZQFT-JTU<TUS> -JTU<TUS>UZQJOH(FOFSJDTUZQJOH(FOFSJD.FUB@@HFUJUFN@@ UZQJOH(FOFSJD.FUB@@OFX@@ ˗˗ Β1VUBSHTJO@@BSHT@@ Α*OTUBOUJBUF /PXZPVIBWF-JTU<TUS> ˗˗ Γ3FUVSO
"OBUPNZPGHFOFSJDUZQFT-JTU<TUS> 1SFGFSSFETPMVUJPO "MUXBZ OPUSFDPNNFOEFE (FUBSHVNFOUTPGHFOFSJDUZQFTCZGPMMPXJOHNFUIPET 3FBE@@BSHT@@ $BMM@TVCT@USFF $POWFOJFOUGPSQBSTJOHXIPMFUSFFCVU
JOUFSOBM"1*NBZCSFBLJOUIFGVUVSF
"OBUPNZPGHFOFSJDUZQFT 3FTUPGHFOFSJDUZQFTBSFBMNPTUTBNFJOUIJTXBZ
JGFMTFGPSUZQFJEFOUJDBUJPO _㘗鋅ⴓֽJGFMTF_
JGFMTFGPSUZQFJEFOUJDBUJPO 8IFOZPVIBOEMFBOOPUBUJPOTJOSFBMDPEF ZPVˏMMOEJUˏTBCJUDPNQMFY JNQMFNFOUBUJPO 5JTBCVJMUJOUZQF 5CVJMUJOUZQF :&4 /0 5JTBHFOFSJDUZQF
5HFOFSJDUZQF :&4 3FBESFDVSTJWFMZ /0 5JTBDVTUPNDMBTT
JGFMTFGPSUZQFJEFOUJDBUJPO )PXUP$IFDLJGBUZQFDMBTTJTCVJMUJOPSOPU 4PMVUJPO $IFDLJGUIFUZQFPSDMBTTJTJO@@CVJMUJOT@@PSOPU
JGFMTFGPSUZQFJEFOUJDBUJPO )PXUP$IFDLJGBUZQFJTHFOFSJDPSOPU 4PMVUJPO $IFDLJGJUIBT@@PSJHJO@@PSOPU %FSJWFEUZQFTPGUZQJOH(FOFSJDIBWFJU $BVUJPO %POPUVTFNSP PS@@NSP@@ 6OJPOBOEEFSJWBUJWFTEPOˏUIBWF@@NSP@@
JGFMTFGPSUZQFJEFOUJDBUJPO )PXUP$IFDLJGBDMBTTJTBDVTUPNDMBTTPSOPU $IFDLJGJUˏTOPUBHFOFSJDUZQFBOEIBTQVCMJDBUUSJCVUFT 4PMVUJPO
JGFMTFGPSUZQFJEFOUJDBUJPO )PXUP&YUSBDUUIFPSJHJOPGHFOFSJDUZQFT 3FBE@@PSJHJO@@ &YUSBDUFEPSJHJODBOCFDPNQBSFEXJUIQMBJO HFOFSJDUZQFTJOUZQJOHNPEVMF $BMM@TVCT@USFF <> "MUXBZKVTUGPSIPUYJOHJODPNQBUJCJMJUZ XIJDINBZDBVTFJOUIFGVUVSFSFMFBTFT
4PMVUJPO "MUXBZ OPUSFDPNNFOEFE
JGFMTFGPSUZQFJEFOUJDBUJPO )PXUP(FUUZQFUSFFXJUIPVU@TVCT@USFF 6TFGVMXIFOBWPJEJOHJODPNQBUJCJMJUZ XBMLJOHPOHFOFSJDUZQFUSFF 4PMVUJPO UZQ@@PSJHJO@@ UZQ@@BSHT@@
/PUJDF :PVTIPVMEDIFDLJG @@BSHT@@IBWFHFOFSJDUZQF $BMMJUTFMGSFDVSTJWFMZ UPXBMLPOUZQFUSFF
JGFMTFGPSUZQFJEFOUJDBUJPO )PXUP YFE &RVBMJUZPGHFOFSJDUZQFT 4PMVUJPO 8IFOXFFWBMVBUFUIFFRVBMJUZCFUXFFO 6OJPOBOEPUIFSUZQFT 3FDVSTJPO&SSPSJTSBJTFE
1ZUIPOIBTBTFSJPVTCVHPOFWBMVBUJOHFRVBMJUZPG6OJPOBOEEFSJWBUJWFT 1SPCMFN 3FDPNNFOEFEVTF1ZUIPOPSMBUFS %FQSFDBUFECVUVTFGVMPO VTFJTPQFSBUPSUPDPNQBSF
+40/XSBQQFSJOTQJSFECZ(PMBOH *ˏWFNBEFBOFYQFSJNFOUBMMJCSBSZUPTPMWFJUXJUIWBSJBCMFBOOPUBUJPOT QVIJUBLVUZQFENBSTIBM -JOLJTBMTPJONZQSPQPTBMQBHF
+40/XSBQQFSJOTQJSFECZ(PMBOH ˖ 3FDVSTJWFUZQFDIFDL ˖ 'VMMTVQQPSUPGHFOFSJDUZQFT ,FZQPJOUT
+40/XSBQQFSJOTQJSFECZ(PMBOH ˖ 3FDVSTJWFUZQFDIFDL ˖ 'VMMTVQQPSUPGHFOFSJDUZQFT ,FZQPJOUT BOOM!
-FUˏTEJTDVTTJO0QFO4QBDF '3PPN' *ˏMMIPMENZ0QFO4QBDFBOEQMBOOJOHUPEPMJLF ˖ 3FGBDUPSUZQFENBSTIBM JNQMFNFOUQSPQFSUZPSJFOUFE EZOBNJDUZQFDIFDLFS ˖ &YQMBJOUZQFENBSTIBMˏTCFIBWJPS ˖
%JTDVTTVTFDBTFPGBOOPUBUJPOT ˖ .BLFTPNFUIJOHJOUFSFTUJOH