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
PyPIにアップロードした話 PyData.Okinawa #34 LT大会
Search
takezyou
April 21, 2018
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
PyPIにアップロードした話 PyData.Okinawa #34 LT大会
takezyou
April 21, 2018
More Decks by takezyou
See All by takezyou
iTerm2のステータスバーのコンポーネントを自作する (たぶんPython初心者でもできる)
takezyou
1
660
Featured
See All Featured
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
320
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
GitHub's CSS Performance
jonrohan
1033
470k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
Prompt Engineering for Job Search
mfonobong
0
430
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
440
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
370
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
430
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.3k
GraphQLとの向き合い方2022年版
quramy
50
15k
Transcript
PyPIʹΞοϓϩʔυͨ͠ PyData.Okinawa Meetup #34 - LTେձ @takezyou
ࣗݾհ • Akita Kaito • ླྀٿେֶେֶӃ 1ੜ • ݚڀSDNٕज़Λ༻͍ͨωοτϫʔΫͷՄࢹԽ •
Web×IoT ϝΠΧʔζνϟϨϯδ in ԭೄɹ࠷༏ल • PythonBeginners organizer • ࠷ۙόΠτ࢝Ί·ͨ͠ • github: takezyou
PyPI
ͺ͍ͺ͍?
PyPIͱ • Python Package Index(https://pypi.org) • PythonͷύοέʔδཧαΠτ/ϦϙδτϦ • ύοέʔδΛΞοϓϩʔυ͢Δ͜ͱ͕Ͱ͖Δ •
࣮ࡍͷಡΈํύΠϐʔΞΠ
Pythonύοέʔδ࡞
Ξοϓϩʔυ·ͰͷྲྀΕ • ΞΧϯτ࡞(https://pypi.org/account/register/) • setup.pyΛ࡞ • ։ൃ • ςετ •
࡞ • ύοέʔδͷొ/Ξοϓϩʔυ
ΞΧϯτ࡞
setup.pyͷ࡞ • ύοέʔδͷใΛهड़͢ΔϑΝΠϧ • ϞδϡʔϧΛʹ͢ΔͨΊʹඞͣඞཁ
GSPNTFUVQUPPMTJNQPSUTFUVQ pOE@QBDLBHFT GSPNDPEFDTJNQPSUPQFO GSPNPTJNQPSUQBUI IFSFQBUIBCTQBUI QBUIEJSOBNF @@pMF@@ XJUIPQFO QBUIKPJO
IFSF 3&"%.&NE FODPEJOHVUG BTG MPOH@EFTDSJQUJPOGSFBE TFUVQ OBNFQZEBUB WFSTJPO EFTDSJQUJPO1Z%BUB-PDBUJPO-JTU` MPOH@EFTDSJQUJPOMPOH@EFTDSJQUJPO VSMIUUQTHJUIVCDPNUBLF[ZPVQZEBUB BVUIPSUBLF[ZPV BVUIPS@FNBJMLBJUPLVO!JDMPVEDPN MJDFOTF.*5 JOTUBMM@SFRVJSFT<CFBVUJGVMTPVQ MYNM> LFZXPSETQZEBUB QBDLBHFTpOE@QBDLBHFT FYDMVEF UFTUT FOUSZ@QPJOUT\ DPOTPMF@TDSJQUT< QZEBUBQZEBUB@@JOJU@@NBJO > ^ DMBTTJpFST< -JDFOTF04*"QQSPWFE.*5-JDFOTF 1SPHSBNNJOH-BOHVBHF1ZUIPO 1SPHSBNNJOH-BOHVBHF1ZUIPO >
ᵓᴷᴷ-*$&/4&UYU ᵓᴷᴷ3&"%.&NE ᵓᴷᴷQZEBUB ᴹᵓᴷᴷ@@JOJU@@QZ ᴹᵓᴷᴷDPNNBOEQZ ᴹᵋᴷᴷMJTUQZ ᵓᴷᴷTFUVQQZ ᵋᴷᴷUFTUT ᵓᴷᴷ@@JOJU@@QZ
ᵋᴷᴷUFTU@MJTUQZ ։ൃ
ςετ • testsʹػೳ͝ͱʹςετΛ͔͘ • ಈ࡞֬ೝ
ιʔεσΟετϦϏϡʔγϣϯ ."/*'&45JO͕ඞཁʹͳͬͯ͠·͏ QZUIPOTFUVQQZTEJTU όΠφϦύοέʔδ QJQJOTUBMMXIFFM QZUIPOTFUVQQZCEJTU@XIFFM ࡞
ύοέʔδͷొ/Ξοϓϩʔυ • .pypircΛϗʔϜʹ࡞ <EJTUVUJMT> JOEFYTFSWFST QZQJ UFTUQZQJ <QZQJ> VTFSOBNFUBLF[ZPV QBTTXPSEZPVQBTTXPSE
<UFTUQZQJ> SFQPTJUPSZIUUQTUFTUQZQJPSHMFHBDZ VTFSOBNFUBLF[ZPV QBTTXPSEZPVQBTTXPSE
ύοέʔδͷొ/Ξοϓϩʔυ • https://test.pypi.orgͰςετ͢Δ • twineΛ༻͍ͯtestpypiʹΞοϓϩʔυ • testpypiΞΧϯτ͕ඞཁ QJQJOTUBMMUXJOF UXJOFVQMPBESFQPTJUPSZUFTUQZQJEJTU
QJQJOTUBMMJOEFYVSMIUUQTUFTUQZQJPSHTJNQMFQZEBUB
ύοέʔδͷొ/Ξοϓϩʔυ • ຊ൪ͰΞοϓϩʔυ • twineΛ༻͍ͯpypiʹΞοϓϩʔυ UXJOFVQMPBESFQPTJUPSZQZQJEJTU
None
DEMO
·ͱΊ • PyPIʹΞοϓϩʔυ͢Δ͜ͱ͕Ͱ͖ͨ • pipͰࣗ࡞ͨ͠ͷΛΠϯετʔϧͰ͖Δ • ײಈ͕͍͢͝ • Έͳ͞ΜύοέʔδΛΞοϓϩʔυͯ͠Έ·͠ΐ͏ʂʂ
ࢀߟจݙ • https://github.com/pypa/sampleproject • https://packaging.python.org/tutorials/ distributing-packages/ • https://qiita.com/icoxfog417/items/ edba14600323df6bf5e0 •
https://tell-k.github.io/pyconjp2015/#1