av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

python 如何上傳包到pypi

瀏覽:75日期:2022-07-01 11:11:59

有過(guò)一定的 Python 經(jīng)驗(yàn)的開(kāi)發(fā)者都知道,當(dāng)引入第三方包時(shí),我們常常會(huì)使用 pip install 命令來(lái)下載并導(dǎo)入包。

那么,如何寫一個(gè)自己的包,上傳到 PyPI 呢,其他開(kāi)發(fā)者也可以通過(guò) pip install 命令下載并導(dǎo)入?

本文提供了最簡(jiǎn)單的示例。

準(zhǔn)備好項(xiàng)目目錄

創(chuàng)建一個(gè)項(xiàng)目目錄,其目錄結(jié)構(gòu)如下:

/packaging_tutorial /example_pkg __init__.py

其中,packaging_tutorial 是一個(gè)文件目錄,example_pkg 是一個(gè)你希望上傳的 Python 包。

注:本人使用的是 virtualenv + virtualenvwrapper 構(gòu)建的 Python 虛擬環(huán)境,因此 python 和 pip 命令(而非 python3 和 pip3)直接對(duì)應(yīng)的是我所指定的虛擬環(huán)境(Python 3.6.7)。

創(chuàng)建一些必要文件

再向 packaging_tutorial 中創(chuàng)建一些文件。其目錄結(jié)構(gòu)如下:

/packaging_tutorial /example_pkg __init__.py setup.py LICENSE README.md創(chuàng)建 README.md 文件

在 README.md 可以輸入一些介紹項(xiàng)目的文檔。

# 測(cè)試這只是一個(gè)測(cè)試。- 測(cè)試 1- 測(cè)試 2- 測(cè)試 3創(chuàng)建 setup.py 文件

setup.py 是 setuptools 的構(gòu)建腳本,它提供了包的各種信息。

在 setup.py 中輸入以下代碼:

import setuptoolswith open('README.md', 'r') as fh: long_description = fh.read()setuptools.setup( name='example-pkg-your-username', version='0.0.1', author='Example Author', author_email='author@example.com', description='A small example package', long_description=long_description, long_description_content_type='text/markdown', url='https://github.com/pypa/sampleproject', packages=setuptools.find_packages(), classifiers=[ 'Programming Language :: Python :: 3', 'License :: OSI Approved :: MIT License', 'Operating System :: OS Independent', ],)

各個(gè)配置的字段的含義應(yīng)該是不言而喻的,如果想了解更多,參見(jiàn)官網(wǎng)解釋。

創(chuàng)建 LICENSE

LICENSE 是項(xiàng)目所遵循的許可證,以 MIT 為例:

Copyright (c) 2018 The Python Packaging AuthorityPermission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the 'Software'), to dealin the Software without restriction, including without limitation the rightsto use, copy, modify, merge, publish, distribute, sublicense, and/or sellcopies of the Software, and to permit persons to whom the Software isfurnished to do so, subject to the following conditions:The above copyright notice and this permission notice shall be included in allcopies or substantial portions of the Software.THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THEAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHERLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THESOFTWARE.存檔發(fā)布版本

一般來(lái)說(shuō),pip 默認(rèn)應(yīng)該都安裝了 setuptools 和 wheel。如果沒(méi)有安裝,則安裝之:

pip install setuptools wheel -i https://pypi.douban.com/simple

如果安裝需要更新,則更新之:

pip install --upgrade setuptools wheel -i https://pypi.douban.com/simple

安裝好最新版本后,在 setup.py 所在目錄下輸入:

python setup.py sdist bdist_wheel

這個(gè)命令會(huì)在生成一個(gè) dist 目錄,里面有兩個(gè)文件:

dist/ example_pkg_your_username-0.0.1-py3-none-any.whl example_pkg_your_username-0.0.1.tar.gz

tar.gz 是源文件存檔,whl 是構(gòu)建的發(fā)布版本。

上傳發(fā)布版本

安裝 twine:

pip install twine -i https://pypi.douban.com/simple

安裝好之后,執(zhí)行 twine 命令(這里,需要注意你已經(jīng)注冊(cè)了 PyPI 的賬號(hào)):

twine upload dist/*

Enter your username: heyulong Enter your password: Uploading distributions to https://upload.pypi.org/legacy/Uploading example_pkg_heyulong-0.0.1-py3-none-any.whl100%|??????????????????????????????????????| 5.49k/5.49k [00:01<00:00, 4.66kB/s]Uploading example-pkg-heyulong-0.0.1.tar.gz100%|??????????????????????????????????????| 4.23k/4.23k [00:01<00:00, 2.21kB/s]

執(zhí)行完之后,即可在 PyPI 官網(wǎng)上看到自己上傳的項(xiàng)目了。

安裝你上傳的 PyPI 項(xiàng)目,比如我的:

pip install example-pkg-heyulong

這里簡(jiǎn)單介紹了上傳 PyPI 項(xiàng)目的過(guò)程。更多細(xì)節(jié)請(qǐng)關(guān)注 PyPI 官網(wǎng)。

以上就是python 如何上傳包到pypi的詳細(xì)內(nèi)容,更多關(guān)于python 上傳包到pypi的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: www国产亚洲精品 | 欧美在线观看一区二区 | 亚洲高清在线 | 国产二区精品视频 | 国产精品中文字幕在线播放 | 欧美日韩在线播放 | 人人干超碰 | 亚洲av毛片成人精品 | 99精品在线观看 | 日韩一级黄色片 | 久久99蜜桃综合影院免费观看 | 99爱在线视频 | 夜夜爽99久久国产综合精品女不卡 | 午夜久久久久久久久久一区二区 | 毛片网站在线观看 | 夜夜骑综合 | 国产精品美女一区二区三区 | 九九在线视频 | 久久69精品久久久久久久电影好 | 色秀网站 | 欧美一区二区三区免费电影 | 黄色成人免费在线观看 | 中文字幕一区二区三区不卡在线 | 欧美网址在线观看 | 亚洲国产一区视频 | 亚洲精品无人区 | 中文字幕乱码一区二区三区 | 国产人成精品一区二区三 | 国产真实精品久久二三区 | 久久久91精品国产一区二区三区 | 日韩精品久久久 | 一级大片网站 | 国产一区二区三区在线视频 | 久草资源网站 | 精品久久久久久久久久久院品网 | 久久久视频在线 | 国产日韩欧美另类 | 午夜精品久久久久久久久久久久久 | 亚洲电影第三页 | 久久久久国产一区二区三区 | 在线黄色网 |