您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“Python怎么打包代碼和發(fā)布”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Python怎么打包代碼和發(fā)布”吧!
就拿我們上次演示的 用 Python 開發(fā)一個 「個人計(jì)劃 todolist」 為例,寫完代碼之后,代碼的目錄是這樣的:
在 todo 這個目錄里面,文件都放在一起了,我們可以這樣簡單劃分一下:
這里創(chuàng)建了一個 package 目錄,將源碼文件放進(jìn)去,然后把模板文件和數(shù)據(jù)庫文件分門別類的安排好。
在 package 中,還創(chuàng)建了一個 你常??吹降?__init__.py 到底是個啥? 儀式感一下。
為了讓別人知道你是認(rèn)真對待這個項(xiàng)目的,你可以在項(xiàng)目文件中創(chuàng)建一個 tests 目錄,在里面測試你的代碼:
接著可以創(chuàng)建一個 LICENSE,用來說明你的這個項(xiàng)目可以被怎么使用?是不是需要聲明來源,是不是可以商用?別人用你的項(xiàng)目去搞事情如何避免被抓去吃牢飯等。
接著再創(chuàng)建一個 README 文件,來說明你這個項(xiàng)目是干什么的,如何使用等描述。
現(xiàn)在你的項(xiàng)目文件目錄就有點(diǎn)人模人樣了:
接下來要創(chuàng)建一個比較重要的文件了 —— setup.py,這個文件主要用來描述你的項(xiàng)目信息,好讓 setuptools 打包工具來幫你打包項(xiàng)目。
在根目錄下創(chuàng)建一個 setup.py 文件,按以下的方式來寫你的項(xiàng)目信息:
每個參數(shù)都是什么意思呢?我來給你說明一下:
long_description:對項(xiàng)目比較長的描述,我們可以直接從 你剛剛寫的 README 文件讀取。
name: 你定義的包名,可以用字母、數(shù)字、下劃線,需要確保唯一性。
version: 項(xiàng)目的版本號。
author: 你(作者)的名稱。
author_email: 你(作者) 的郵箱。
description: 項(xiàng)目的簡要描述。
long_description_content_type:長描述內(nèi)容的使用的標(biāo)記類型,一般為 markdown 或者 rst。
url: 你這個項(xiàng)目的主頁地址,也可以直接鏈接到你這個項(xiàng)目的Github 地址上面去。
include_package_data: 是否添加 py 以外的文件。
package_data: 需要添加 Python 的額外文件列表。
packages: 直接用 setuptool 找到你項(xiàng)目所有相關(guān)的包列表。
classifiers: 附加說明,比如這里寫的就是使用于 Python3 版本,使用的是 MIT 協(xié)議,獨(dú)立于 OS。
python_requires: python 版本要求。
那么現(xiàn)在,你的項(xiàng)目目錄應(yīng)該是這樣子的:
接下來就可以打包了。
如果你之前沒有安裝過 setuptools 和 wheel 可以先安裝一波:
python3 -m pip install --upgrade setuptools wheel
然后在你的項(xiàng)目根目錄下,使用如下命令打包:
python3 setup.py sdist bdist_wheel
這時候你的目錄會增加這么些文件:
這樣就算打包好了,在 dist 目錄中,以 tar.gz 結(jié)尾的是你項(xiàng)目的源文件,而以 .whl 結(jié)尾的就是構(gòu)建好了給別人使用的發(fā)行版。
那么如何將你打包好的項(xiàng)目發(fā)布出來,給別人使用呢?
其實(shí)之前有說過了,這里再簡單的說一下吧:
先安裝一下 twine:
python3 -m pip install twine
接著使用 twine 將你打包好的文件上傳到 pypi 上面去:
twine upload dist/*
這時候它會提示你輸入 pypi 的賬號密碼:
沒有怎么辦?去注冊一個唄,到以下鏈接注冊:
https://pypi.org/account/register/
接著輸入你的賬號密碼,就可以上傳上去了:
這時候別人就可以通過 pip 來安裝你的項(xiàng)目了:
像這樣:
然后就可以給別人使用你的包了:
你在 pip install 的時候,其實(shí)就是下載你上傳的 whl 文件然后安裝:
如果你不想開源,只想給你朋友使用的話,你也可以直接把 dist 這個目錄下的文件發(fā)給他,讓他自行安裝一波就可以使用了:
到此,相信大家對“Python怎么打包代碼和發(fā)布”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。