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
LT「データまえしょりすとのためのpytest入門」@みんなのPython勉強会#46
Search
komo_fr
June 12, 2019
Technology
5
3k
LT「データまえしょりすとのためのpytest入門」@みんなのPython勉強会#46
Event Page:
https://startpython.connpass.com/event/124251/
Twitter:
https://twitter.com/komo_fr
komo_fr
June 12, 2019
Tweet
Share
More Decks by komo_fr
See All by komo_fr
Bokeh & Dash Cytoscape 〜 Pythonによるインタラクティブなネットワーク可視化ライブラリの比較 / PyConJP2021
komofr
0
690
Dash Cytoscape 〜 Pythonによるインタラクティブ・ネットワーク可視化入門 / StartPython#67
komofr
0
1.4k
Dash Cytoscapeで始めるネットワーク可視化 / plotly dash book
komofr
0
490
(修正版) NumPy/pandas使いのためのテスト自動化入門 / PyConJP2020
komofr
32
11k
[Python Charity Talks in Japan] LT: ネットワーク解析とテキスト解析で見るPEP / pycharity
komofr
0
1.3k
PyPI翻訳プロジェクト速報 / PyLadies Tokyo LT
komofr
1
460
pandasのStyling機能で強化するJupyter実験レポート / PyConJP 2019
komofr
15
25k
EuroPython 2019 LT / Let's Explore PEPs with NetworkX!
komofr
2
930
PyLadies Tokyo Meetup #41 | SQLユーザのためのpandas入門 第2部
komofr
1
580
Other Decks in Technology
See All in Technology
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
750
スクラムチームを立ち上げる〜チーム開発で得られたもの・得られなかったもの〜
ohnoeight
2
350
【若手エンジニア応援LT会】ソフトウェアを学んできた私がインフラエンジニアを目指した理由
kazushi_ohata
0
150
ハイパーパラメータチューニングって何をしているの
toridori_dev
0
140
信頼性に挑む中で拡張できる・得られる1人のスキルセットとは?
ken5scal
2
530
ISUCONに強くなるかもしれない日々の過ごしかた/Findy ISUCON 2024-11-14
fujiwara3
8
860
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
150
B2B SaaS × AI機能開発 〜テナント分離のパターン解説〜 / B2B SaaS x AI function development - Explanation of tenant separation pattern
oztick139
2
220
CysharpのOSS群から見るModern C#の現在地
neuecc
1
3.1k
Terraform CI/CD パイプラインにおける AWS CodeCommit の代替手段
hiyanger
1
240
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
220
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
327
21k
Docker and Python
trallard
40
3.1k
Fireside Chat
paigeccino
34
3k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Adopting Sorbet at Scale
ufuk
73
9.1k
What's new in Ruby 2.0
geeforr
343
31k
How to Ace a Technical Interview
jacobian
276
23k
4 Signs Your Business is Dying
shpigford
180
21k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Building an army of robots
kneath
302
43k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
Transcript
σʔλ·͑͠ΐΓ͢ͱͷ QZUFTUೖ %BUF &WFOUΈΜͳͷ1ZUIPOษڧձ IUUQTTUBSUQZUIPODPOOQBTTDPNFWFOU 4QFBLFS!LPNP@GS 5PNPLP'VSVLJ
w!LPNP@GS 5PNPLP'VSVLJ w ͓͠͝ͱ w ҩྍը૾ใγεςϜͷ։ൃʢઃܭ࣮ʣ w 1ZUIPOͰσʔλ׆༻ͷ1P$࡞ w
ϑϦʔ w ͨ·ʹ1ZUIPOຊͷϨϏϡʔΛͬͯΔ w ʰ1ZUIPOʹΑΔ͋ͨΒ͍͠σʔλੳͷڭՊॻʱᠳӭࣾ w ʰͰ͖Δࣄ͕͔ͲΔ1ZUIPOࣗಈॲཧશ෦ೖΓɻʱΠϯϓϨε !2 8IPBN*
ςετࣗಈԽܦݧ͋Μ·Γͳ͍ σʔλલॲཧ͕ ʰςετۦಈ1ZUIPOʱΛಡΜͰ QZUFTUೖ͢Δ·Ͱͷաఔ ࠓ͢͜ͱ
w ʮ͜ͷσʔλΛͬͯ˓̋ͳ͜ͱ͕Ͱ͖ͳ͍͔ʯͱ ະඋͷੜσʔλΛ͘ w +VQZUFS/PUFCPPL্ͰQBOEBTͰσʔλ֬ೝ ΰϦΰϦલॲཧ w ͱͯటष͍ॲཧௐࠪ w ͜͜Ͱॻ͘ίʔυॻ͖ࣺͯʹͳΔ͜ͱ͕ଟ͍
w ʮΠΠͶʂʯͱͳͬͨΒɺ࣍ͷεςοϓʹਐΉ !4 ͓ࣄͷྲྀΕ࣌ͷΈ
w ʮ͜ͷσʔλΛͬͯ˓̋ͳ͜ͱ͕Ͱ͖ͳ͍͔ʯͱ ະඋͷੜσʔλΛ͘ w +VQZUFS/PUFCPPL্ͰQBOEBTͰσʔλ֬ೝ ΰϦΰϦલॲཧ w ͱͯటष͍ॲཧௐࠪ w ͜͜Ͱॻ͘ίʔυॻ͖ࣺͯʹͳΔ͜ͱ͕ଟ͍
w ʮΠΠͶʂʯͱͳͬͨΒɺ࣍ͷεςοϓʹਐΉ !5 ͓ࣄͷྲྀΕ࣌ͷΈ ͜ͷ࣌Ͱɺ ͜ͷίʔυ͕࠶ͼ ΘΕΔ͔Ͳ͏͔Θ͔Βͳ͍ʜʜ
w ʮ͜ͷσʔλΛͬͯ˓̋ͳ͜ͱ͕Ͱ͖ͳ͍͔ʯͱ ະඋͷੜσʔλΛ͘ w +VQZUFS/PUFCPPL্ͰQBOEBTͰσʔλ֬ೝ ΰϦΰϦલॲཧ w ͱͯటष͍ॲཧௐࠪ w ͜͜Ͱॻ͘ίʔυॻ͖ࣺͯʹͳΔ͜ͱ͕ଟ͍
w ʮΠΠͶʂʯͱͳͬͨΒɺ࣍ͷεςοϓʹਐΉ !6 ͓ࣄͷྲྀΕ࣌ͷΈ
w ʮ͜ͷσʔλΛͬͯ˓̋ͳ͜ͱ͕Ͱ͖ͳ͍͔ʯͱ ະඋͷੜσʔλΛ͘ w +VQZUFS/PUFCPPL্ͰQBOEBTͰσʔλ֬ೝ ΰϦΰϦલॲཧ w ͱͯటष͍ॲཧௐࠪ w ͜͜Ͱॻ͘ίʔυॻ͖ࣺͯʹͳΔ͜ͱ͕ଟ͍
w ʮΠΠͶʂʯͱͳͬͨΒɺ࣍ͷεςοϓʹਐΉ !7 ͓ࣄͷྲྀΕ࣌ͷΈ ͕ࣗॻ͍ͨΫιίʔυͷ मਖ਼ɾϦϑΝΫλϦϯάɾ෦Խ
w ʮ͜ͷσʔλΛͬͯ˓̋ͳ͜ͱ͕Ͱ͖ͳ͍͔ʯͱ ະඋͷੜσʔλΛ͘ w +VQZUFS/PUFCPPL্ͰQBOEBTͰσʔλ֬ೝ ΰϦΰϦલॲཧ w ͱͯటष͍ॲཧௐࠪ w ͜͜Ͱॻ͘ίʔυॻ͖ࣺͯʹͳΔ͜ͱ͕ଟ͍
w ʮΠΠͶʂʯͱͳͬͨΒɺ࣍ͷεςοϓʹਐΉ !8 ͓ࣄͷྲྀΕ࣌ͷΈ ੜσʔλͷόϦΤʔγϣϯ૿ ʢલॲཧͷόϦΤʔγϣϯ૿ʣ ͕ࣗॻ͍ͨΫιίʔυͷ मਖ਼ɾϦϑΝΫλϦϯάɾ෦Խ
w ʮ͜ͷσʔλΛͬͯ˓̋ͳ͜ͱ͕Ͱ͖ͳ͍͔ʯͱ ະඋͷੜσʔλΛ͘ w +VQZUFS/PUFCPPL্ͰQBOEBTͰσʔλ֬ೝ ΰϦΰϦલॲཧ w ͱͯటष͍ॲཧௐࠪ w ͜͜Ͱॻ͘ίʔυॻ͖ࣺͯʹͳΔ͜ͱ͕ଟ͍
w ʮΠΠͶʂʯͱͳͬͨΒɺ࣍ͷεςοϓʹਐΉ !9 ͓ࣄͷྲྀΕ࣌ͷΈ ੜσʔλͷόϦΤʔγϣϯ૿ ʢલॲཧͷόϦΤʔγϣϯ૿ʣ ͕ࣗॻ͍ͨΫιίʔυͷ मਖ਼ɾϦϑΝΫλϦϯάɾ෦Խ
w ࣌ͷࢲͷςετίʔυΛॻ͘εΩϧ w Ҏલ։ൃʹ͍͕ͨɺςετࣗಈԽ͞Ε͍ͯͳ͍ڥͩͬͨ w ʢؾ͕ڰ͍ͦ͏ͩͬͨʣ w ݸਓͰ044ʹػೳՃͷQVMMSFRVFTUΛૹΔͱ͖ʹɺ ඞཁʹഭΒΕͯςετίʔυΛॻ͍ͨ͜ͱ͋Δ QZUFTU
w ͨͩ͠ɺৗతʹॻ͚͍ͯΔΘ͚Ͱͳ͍ !10 ςετίʔυΛॻ͍ͯਫ਼ਆͷۉߧΛอ͍ͪͨ
ؾ͕ڰ͍ͦ͏ͳ టष͍લॲཧͷ܁Γฦ͠Λɺ ςετࣗಈԽͰ গ͠Ͱָʹ͍ͨ͠ʜ
ςετࣗಈԽ ಋೖͷ͖͔͚ͬ !12
w ςετͷೖʹ͍͍ͯΔʢͱࢥ͏ʣίʔυ w ग़ྗ͕໌֬ͰɺԿճमਖ਼͢Δػձ͕͋Δίʔυ w ࢲͷ߹ w ϩʔΧϧʹ͋ΔIUNMϑΝΠϧ͔ΒσʔλΛநग़ͯ͠ɺ DTWܗࣜʹม͢Δࣗ࡞લॲཧπʔϧ w
ग़ྗ͕໌֬ͳͷͰɺςετΛॻ͖͍͢ w ೖྗɺͨ·ʹఆ͠ͳ͍ܗࣜͷIUNM͕དྷΔ w मਖ਼ͷػձ͕Կճൃੜ͢Δ !13 ͖͔͚ͬͪΐ͏Ͳྑ͍ࡐ͕͋ͬͨ
w +VQZUFS/PUFCPPLͰॻ͖ԥΔɺճ͖ͬ͜Γͷίʔυ w ػցֶशϞσϧɺ ग़ྗ͕֬తͰৗʹಉ͡ͱݶΒͳ͍έʔε w ݸਓతʹॻ͖ͩ͘ͱࢥ͏͠ॻ͖͍͕ͨɺ ࠷ॳγϯϓϧͳέʔεʹͨ͠ํ͕ྑ͍͔ w ࢲΑ͘Θ͔ΒΜͷͰɺ
͜ͷลৄ͍͠ਓ͕͍ͨΒ࠙ձͰڭ͍͑ͯͩ͘͞ !14 ςετೖʹ͍͍ͯͳ͍ʢͱࢥ͏ʣίʔυ
w σʔλαΠΤϯεܥͷఆ൪044Ͱ࠾༻͞Ε͍ͯͨ w OVNQZ QBOEBT NBUQMPUMJCʜʜ w ॻ͖ํʹࠔͬͨΒɺ͜ͷลͷίʔυΛࢀߟʹ͠Α͏ͱࢥͬͨ w ͪΐ͏Ͳʰςετۦಈ1ZUIPOʱ
ᠳӭࣾ ͕ ൃച͞ΕͨλΠϛϯάͩͬͨ !15 ԿͷπʔϧΛ͏͔QZUFTUΛબ ը૾ɿ IUUQTXXXTIPFJTIBDPKQCPPLEFUBJM
w ʢݸਓతʹʣຊͷ༰Λᘳཧղͯ͠ɺ ͍͖ͳΓϕετϓϥΫςΟΫεΛΖ͏ͱͯ͠ଓ͔ͳ͍ w ຊͰհ͞Ε͍ͯΔશ͕ͯɺࣗͷέʔεͰඞཁͱݶΒͳ͍ w िɿେࡶʹಡΜͰ֓ཁΛѲ͠ɺ·ͣࡶʹ࢝ΊΔ w िɿࡶͰ͍͍͔Βɺܧଓͯ͠ఆணͤ͞Δ w
िʙɿඞཁʹԠͯ͡ɺຊެࣜυΩϡϝϯτΛݟָͯʹ͢Δ !16 ಋೖͷํ
w ͩΒͩΒJOQVUʹภΒͳ͍Α͏ʹɺظඪΛܾΊΔ w ʰ࣮Ͱॻ͍͍ͯΔίʔυʹରͯ͠ɺԿͰྑ͍͔ΒͭҎ্ͷؔʹςε τίʔυΛՃ͢Δʢ༵ۚ·Ͱʣʱ w ݄ʙͷؒʹʰςετۦಈ1ZUIPOʱશମΛ௨ಡ͢Δ w ֓ཁΛѲ͢Δͷ͕త w
͋ͨΓେମʙ࣌ؒ͘Β͍ w ࣌ؒͷ߹্શͯͷจষΛ͔ͬ͠ΓಡΉ͜ͱͰ͖ͳ͍ w ͨͩ͠ɺίϚϯυ࣮ࡍʹଧͬͯࢼͨ͠ w "QQFOEJYͷ֦ுػೳʹؔ͢ΔτϐοΫɺ࠷ॳඈͨ͠ !17 ि ֓ཁΛѲͯ͠ɺ·ͣࡶʹ࢝ΊΔʣ
w ςετ͍͢͠෦Λத৺ʹɺςετίʔυΛॻ͍͍ͯ͘ w IUNMQBOEBTͷ%BUB'SBNFͷม෦ w ࡶɺͱ w UNQEJSͱ͔ΘͣʹɺςετͰग़ྗ͞ΕͨϑΝΠϧखಈͰফ͢ w ྫ֎ॲཧ෦ͷςετͱΓ͋͑ͣޙճ͠
w ֦ுػೳΛೖΕΔ w QZUFTUqBLF w QZUFTUDPW !18 ि ࡶͰ͍͍͔Βɺܧଓͯ͠ఆணͤ͞Δʣ
w ߦྻͷฒͼ·ͰݫີʹνΣοΫ͍ͨ͠έʔεɺ ཁૉͷ͑͞߹͍ͬͯΕྑ͍έʔεɺ৭ʑʜʜ w QBOEBTUFTUJOHϞδϡʔϧ w BTTFSU@GSBNF@FRVBM w BTTFSU@TFSJFT@FRVBM
w QBOEBTͷςετίʔυࣗମ͕αϯϓϧͱͯ͠ࢀߟʹͳΔ !19 QBOEBTͷ%BUB'SBNFΛͲ͏ൺֱ͢Δʁ 5FTUJOH'VODUJPOɿ IUUQTQBOEBTQZEBUBPSHQBOEBTEPDTTUBCMFSFGFSFODF HFOFSBM@VUJMJUZ@GVODUJPOTIUNMUFTUJOHGVODUJPOT
w ஈʑςετίʔυ͕૿͖͑ͯͯɺࢧো͕ग़ͯ͘Δ w ςετաఔͰੜͨ͡ϑΝΠϧΛUNQEJSͰࣗಈͰফ͢ w ϑΟΫενϟͬͯΈΔ w ෦తʹςετ࣮ߦ͢Δ w ͳͲͳͲʜ
w ʰςετۦಈQZUIPOʱΛࡧҾతʹ͍ͳ͕Βಋೖ w Χόʔ͍ͯ͠ͳ͍෦ެࣜυΩϡϝϯτΛࢀর !20 िʙʢඞཁʹԠͯ͡ɺָʹ͢Δʣ
w ྫ֎ॲཧ෦ʹςετΛೖΕΔ w ఆέʔε w େྔͷσʔλΛॲཧ͢ΔதͰɺఆ͍ͯ͠ͳ͍ϑΥʔϚοτͷσʔ λ͕དྷͨ߹ɺྫ֎Λൃੜͤͯ͞ϩάΛग़͠ɺΓͷσʔλͷ ॲཧΛଓ͚͍ͨ w ࢭ·ͬͯཉ͘͠ͳ͍͕ɺϩά͔ͬ͠Γग़ͯ͠΄͍͠
w ςετ͍ͨ͜͠ͱɿ w ظ௨Γྫ֎͕ൃੜ͢Δ͔ QZUFTUSBJTF w FYDFQU۟ͷத͕ظ௨Γಈ͍͍ͯΔ͔ NPDL !21 िʙʢඞཁʹԠͯ͡ɺָʹ͢Δʣ
w ਫ਼ਆͷ҆ఆ͕ͳ͍ w ίʔυ͕͓͔͍͠ͷ͔ɺҙਤ͠ͳ͍σʔλܗ͕ࣜདྷͨͷ͔Γ ͚͍͢ w ϦϑΝΫλϦϯά࣌ͷ҆৺ײ w ޙͰ͏࣌ɺςετίʔυ͕༷ΘΓʹͳΔ w
టष͍લॲཧͷίʔυɺ༷టष͘ͳΓ͍͢ w ͨͩظӡ༻ͯ͠ͳ͍ͷͰɺ ظӡ༻ͨ࣌͠ͷ·ͩΑ͘Θ͔Βͳ͍ !22 ͬͯΈͨॴײ
͓·͚ͷใ !23
w ʰ(FUUJOH4UBSUFE5FTUJOHJO%BUB4DJFODFʱ w 1Z$PO64ͷτʔΫ QZWJEFPPSHͰ؍ΕΔ w ςετʹ͓͚Δσʔλܥಛ༗ͷʹ৮Εͨޙɺ QZUFTUͷଞɺ)ZQPUIFTJTʹΑΔ%BUB'SBNFͷςετσʔλੜ ͳͲͷ5JQTΛհ͍ͯ͠Δɻ
w εϥΠυ࠷ޙͷࢀߟจݙͰɺ աڈͷ1Z$POͷςετؔͷτʔΫ͕·ͱΊΒΕ͍ͯΔɻ !24 σʔλܥͷͨΊͷςετࣗಈԽใ QZWJEFPɿ IUUQTQZWJEFPPSHQZDPOVTHFUUJOHTUBSUFEUFTUJOHJOEBUBTDJFODFIUNM TMJEF IUUQTTQFBLFSEFDLDPNQZDPOKFTGPSEHFUUJOHTUBSUFEUFTUJOHJOEBUBTDJFODF
w σʔλલॲཧటष͘ͳΓ͕ͪ w QZUFTUಋೖͰɺগ͠Ͱਫ਼ਆͷۉߧΛอͱ͏ w 0VU͕໌֬ͳσʔλίϯόʔτπʔϧɺ ൺֱతςετͷೖʹ͍͍ͯΔʜʜͱࢥ͏ w ·ͩงғؾͰͬͯΔͷͰɺ σʔλܥͷςετίʔυͷʹৄ͍͠ํ͕͍ͨΒɺ
࠙ձͰڭ͍͑ͯͩ͘͞ w ʰςετۦಈ1ZUIPOʱͱͯྑ͍ຊͰ͢ !25 ·ͱΊ
Ұ෦ϨϏϡʔʹࢀՃ͠·ͨ͠
5IBOLZPVGPS MJTUFOJOH !27