Python 項目代碼寫完了,而後怎麼打包和發佈?

Python 項目代碼寫完了,而後怎麼打包和發佈?

小帥b 學習python的正確姿式 python

你把你的代碼寫完了,是否是要給別人使用下,怎麼打包你的項目代碼呢?數據庫

喂,開源麼?markdown

Python 項目代碼寫完了,而後怎麼打包和發佈?

接下來小帥b就跟你說說,如何打包你的代碼。ide

就拿咱們上次演示的 todo 爲例,寫完代碼以後,代碼的目錄是這樣的:工具

Python 項目代碼寫完了,而後怎麼打包和發佈?

在 todo 這個目錄裏面,文件都放在一塊兒了,咱們能夠這樣簡單劃分一下:學習

Python 項目代碼寫完了,而後怎麼打包和發佈?

這裏建立了一個 package 目錄,將源碼文件放進去,而後把模板文件和數據庫文件分門別類的安排好。測試

在 package 中,還建立了一個 init.py 儀式感一下。ui

爲了讓別人知道你是認真對待這個項目的,你能夠在項目文件中建立一個 tests 目錄,在裏面測試你的代碼:url

Python 項目代碼寫完了,而後怎麼打包和發佈?

接着能夠建立一個 LICENSE ,用來講明你的這個項目能夠被怎麼使用?是否是須要聲明來源,是否是能夠商用?別人用你的項目去搞事情如何避免被抓去吃牢飯等。3d

現成的開源協議有好幾種,不太瞭解的能夠看看我以前寫的這個:那些 GitHub 所聲明的開源協議都是什麼意思?

Python 項目代碼寫完了,而後怎麼打包和發佈?

接着再建立一個 README 文件,來講明你這個項目是幹什麼的,如何使用等描述。

Python 項目代碼寫完了,而後怎麼打包和發佈?

如今你的項目文件目錄就有點人模人樣了:

Python 項目代碼寫完了,而後怎麼打包和發佈?

接下來要建立一個比較重要的文件了 —— setup.py,這個文件主要用來描述你的項目信息,好讓 setuptools 打包工具來幫你打包項目。

在根目錄下建立一個 setup.py 文件,按如下的方式來寫你的項目信息:

Python 項目代碼寫完了,而後怎麼打包和發佈?

每一個參數都是什麼意思呢?我來給你說明一下:

long_description:對項目比較長的描述,咱們能夠直接從 你剛剛寫的 README 文件讀取。

Python 項目代碼寫完了,而後怎麼打包和發佈?

name: 你定義的包名,能夠用字母、數字、下劃線,須要確保惟一性。

version: 項目的版本號。

author: 你(做者)的名稱。

author_email: 你(做者) 的郵箱。

description: 項目的簡要描述。

long_description_content_type:長描述內容的使用的標記類型,通常爲 markdown 或者 rst。

url: 你這個項目的主頁地址,也能夠直接連接到你這個項目的Github 地址上面去。

include_package_data: 是否添加 py 之外的文件。

package_data: 須要添加 Python 的額外文件列表。

packages: 直接用 setuptool 找到你項目全部相關的包列表。

classifiers: 附加說明,好比這裏寫的就是使用於 Python3 版本,使用的是 MIT 協議,獨立於 OS。

python_requires: python 版本要求。

那麼如今,你的項目目錄應該是這樣子的:

Python 項目代碼寫完了,而後怎麼打包和發佈?

接下來就能夠打包了。

若是你以前沒有安裝過 setuptools 和 wheel 能夠先安裝一波:

python3 -m pip install --upgrade setuptools wheel

Python 項目代碼寫完了,而後怎麼打包和發佈?

而後在你的項目根目錄下,使用以下命令打包:

python3 setup.py sdist bdist_wheel

Python 項目代碼寫完了,而後怎麼打包和發佈?

這時候你的目錄會增長這麼些文件:

Python 項目代碼寫完了,而後怎麼打包和發佈?

這樣就算打包好了,在 dist 目錄中,以 tar.gz 結尾的是你項目的源文件,而以 .whl 結尾的就是構建好了給別人使用的發行版。

那麼如何將你打包好的項目發佈出來,給別人使用呢?

其實以前有說過了,這裏再簡單的說一下吧:

先安裝一下 twine:

python3 -m pip install twine

接着使用 twine 將你打包好的文件上傳到 pypi 上面去:

twine upload dist/*

這時候它會提示你輸入 pypi 的帳號密碼:

Python 項目代碼寫完了,而後怎麼打包和發佈?

沒有怎麼辦?去註冊一個唄,到如下連接註冊:
https://pypi.org/account/register/

接着輸入你的帳號密碼,就能夠上傳上去了:

Python 項目代碼寫完了,而後怎麼打包和發佈?

這時候別人就能夠經過 pip 來安裝你的項目了:

Python 項目代碼寫完了,而後怎麼打包和發佈?
Python 項目代碼寫完了,而後怎麼打包和發佈?

像這樣:

Python 項目代碼寫完了,而後怎麼打包和發佈?

而後就能夠給別人使用你的包了:

Python 項目代碼寫完了,而後怎麼打包和發佈?

你在 pip install 的時候,其實就是下載你上傳的 whl 文件而後安裝:

Python 項目代碼寫完了,而後怎麼打包和發佈?

若是你不想開源,只想給你朋友使用的話,你也能夠直接把 dist 這個目錄下的文件發給他,讓他自行安裝一波就可使用了:

Python 項目代碼寫完了,而後怎麼打包和發佈?
Python 項目代碼寫完了,而後怎麼打包和發佈?

ok,以上就是今天小帥b給你帶來的分享,但願對你有幫助,那麼咱們下回見,peace!

相關文章
相關標籤/搜索