教你裝逼了:怎麼樣發佈你的 Python 代碼給別人 “pip install”

我們經常在使用某些功能的時候,都會去安裝一些第三方的模塊,比如 “pip install requests”,感覺逼都被別人裝了,你有沒有想過,自己搞一個模塊,給別人直接 pip install 到他的電腦裏面直接使用呢?是不是突然就逼格滿滿了?




圖片



有些人說,“我現在還寫不出牛逼的模塊啊,這就有點尷尬了”。其實沒有關係,咱們先裝逼要緊。當然,如果你哪一天寫了一個非常牛逼的模塊,火了之後不要忘記小帥b就行。




圖片


那麼如何將你的代碼打包,然後發到 pypi 上讓別人直接 pip install 呢?


接下來就是:

學習 Python 的正確姿勢




要打一個 Python 包到 PYPI 上,是需要一定的目錄結構的,首先我們可以創建一個目錄,作爲演示,小帥b在這裏創建一個帥b包:


mkdir shuaib_package


接着我們就進入這個帥b包:


cd shuaib_package/


接着我們在這個目錄下創建一個存放你代碼的目錄,這裏就叫 xiaoshuaib 好了:


mkdir xiaoshuaib


我們進入這個目錄:


cd xiaoshuaib/


創建你的代碼,這裏爲了演示,我就創建一個 xiaoshuaib.py 好了 :


touch xiaoshuaib.py


在這個 py 裏面就簡單寫一個輸出的方法好了:




在這個 xiaoshuaib 目錄下還必須要創建一個 __init__.py 來告訴別人你的模塊是啥:



touch __init__.py


在這個 __init__.py 寫下你的 name 和導入你的代碼模塊:





ok,此時此刻,你的文件目錄是這樣的:





只有這幾個文件還是不夠的,我們還要再創建幾個必要的文件,分別是 setup.py、LICENSE、READEME.md, 至於創建這幾個文件有什麼鳥用,等會帥b給你細細地道來,廢話不要那麼多,先創建再說:


cd shuaib_package/

touch setup.py

touch LICENSE

touch README.md


那麼到現在這個時候,你的文件目錄應該是這樣的:





接下啦帥b就跟你說說這幾個文件分別有什麼鳥用。


1、setup.py


這個文件主要是要告訴 setuptools ,我們的包裏面的一些信息,比如名稱啊,版本號啊,作者,郵箱等等...


我們來編輯一些這個文件:




這裏面對應的意思應該不用我多說了吧,就是一些你的模塊信息,像我這樣填入你自己的就好了。



2、README.md


在這裏就可以對你的模塊進一步各種吹了,剛我們寫的 setup 文件裏面也引用到了這個文件,主要是怕你吹的太多,所以直接用 markdown 讓你吹個夠,我們打開這個 README 文件吹一波:





好吧,我這裏作爲演示就只吹這麼一點點夠了...





3、LICENSE


在開源的世界裏, LICENSE 是必不可少的,我們可以在這裏聲明:你要免費用我的代碼是吧?可以,但是你得署名一下啊,要讓別人知道這是我搞出來的啊,老子不要錢,但不能說這是你自己搞出來的好吧?


LICENSE 有好幾種不同的聲明,以後有機會帥b再跟你說說,這次就用 MIT 的 LICENSE ,我們編輯一下我們剛剛創建的 LICENSE:





好了,現在我們所需的文件就弄好了,接下來就可以將我們的東西給生成可分發的文件,在此之前我們要安裝並且更新好 setuptools 和 wheel 模塊:


python3 -m pip install --user --upgrade setuptools wheel


安裝完成之後,你就可以在你剛剛創建的目錄執行以下命令生成啦:


python3 setup.py sdist bdist_wheel


這時候你就會發現,你的目錄下會多了一個 dist 的目錄,這正是 pypi 所需要的:



圖片



萬事具備,就差 tm 的上傳了啊,那麼你現在就要有一個 pypi 的賬號,你可以到以下鏈接註冊一個賬號:


https://pypi.org/account/register/


如果說你只想自己試着小打小鬧一下,可以到這裏註冊一個測試版的:


https://test.pypi.org/account/register/



圖片



不管咋地,反正你遲早會註冊好一個賬號的對吧?值得注意的是,你要驗證下你的郵箱,代表你不是機器人註冊的賬號:



圖片



那麼此時此刻,你所需的文件也有了,賬號也有了,這次就真的只差上傳一個動作了,我們需要 twine 這個模塊來進行上傳操作,先安裝一下:


python3 -m pip install --user --upgrade twine


安裝好了之後,相信我,一點也不復雜,一個命令就能搞定上傳,進入你的目錄,然後執行以下命令把你剛剛生成的 dist 上傳上去:


 twine upload dist/*


圖片


這樣,我們就將我們的模塊上傳上去了!!


去官網搜一下 xiaoshuaib 先:


圖片



哈哈哈哈,有了,我們來安裝一波吧:


pip install xiaoshuaib


圖片


安裝成功,來使用一波:


圖片


哈哈哈,完美使用。


ok,以上就是從 0 到 發佈一個 pypi 包的完整流程,希望對你有幫助,記得點“在看”。那麼我們下回見,peace!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章