最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python 如何上傳包到pypi

 更新時間:2020年12月24日 16:40:27   作者:何雨龍  
這篇文章主要介紹了python 如何上傳包到pypi,幫助大家更好的理解和使用python,感興趣的朋友可以了解下

有過一定的 Python 經(jīng)驗的開發(fā)者都知道,當(dāng)引入第三方包時,我們常常會使用 pip install 命令來下載并導(dǎo)入包。

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

本文提供了最簡單的示例。

準(zhǔn)備好項目目錄

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

/packaging_tutorial
 /example_pkg
  __init__.py

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

注:本人使用的是 virtualenv + virtualenvwrapper 構(gòu)建的 Python 虛擬環(huán)境,因此 python 和 pip 命令(而非 python3 和 pip3)直接對應(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 可以輸入一些介紹項目的文檔。

# 測試

這只是一個測試。

- 測試 1
- 測試 2
- 測試 3

創(chuàng)建 setup.py 文件

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

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

import setuptools

with 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",
  ],
)

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

創(chuàng)建 LICENSE

LICENSE 是項目所遵循的許可證,以 MIT 為例:

Copyright (c) 2018 The Python Packaging Authority

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, 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 THE
SOFTWARE.

存檔發(fā)布版本

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

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

這個命令會在生成一個 dist 目錄,里面有兩個文件:

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)注冊了 PyPI 的賬號):

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.whl
100%|██████████████████████████████████████| 5.49k/5.49k [00:01<00:00, 4.66kB/s]
Uploading example-pkg-heyulong-0.0.1.tar.gz
100%|██████████████████████████████████████| 4.23k/4.23k [00:01<00:00, 2.21kB/s]

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

安裝你上傳的 PyPI 項目,比如我的:

pip install example-pkg-heyulong

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

以上就是python 如何上傳包到pypi的詳細(xì)內(nèi)容,更多關(guān)于python 上傳包到pypi的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python字節(jié)單位轉(zhuǎn)換實例

    Python字節(jié)單位轉(zhuǎn)換實例

    今天小編就為大家分享一篇Python字節(jié)單位轉(zhuǎn)換實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python求解正態(tài)分布置信區(qū)間教程

    Python求解正態(tài)分布置信區(qū)間教程

    今天小編就為大家分享一篇Python求解正態(tài)分布置信區(qū)間教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Python安裝使用命令行交互模塊pexpect的基礎(chǔ)教程

    Python安裝使用命令行交互模塊pexpect的基礎(chǔ)教程

    Pexpect是一個純Python模塊,可以用來和ssh、ftp、passwd、telnet等命令行命令進(jìn)行交互使用,在Linux系統(tǒng)下尤其好用,下面我們就來具體來看一下Python安裝使用命令行交互模塊pexpect的基礎(chǔ)教程:
    2016-05-05
  • 理想高通濾波實現(xiàn)Python opencv示例

    理想高通濾波實現(xiàn)Python opencv示例

    今天小編就為大家分享一篇關(guān)于理想高通濾波實現(xiàn)Python opencv示例,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • Flask接收上傳圖片方法實現(xiàn)

    Flask接收上傳圖片方法實現(xiàn)

    本文主要介紹了Flask接收上傳圖片方法實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Manjaro、pip、conda更換國內(nèi)源的方法

    Manjaro、pip、conda更換國內(nèi)源的方法

    這篇文章主要介紹了Manjaro、pip、conda更換國內(nèi)源的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • Python的UTC時間轉(zhuǎn)換講解

    Python的UTC時間轉(zhuǎn)換講解

    今天小編就為大家分享一篇關(guān)于Python的UTC時間轉(zhuǎn)換講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • Python Pexpect庫的簡單使用方法

    Python Pexpect庫的簡單使用方法

    這篇文章主要介紹了Python Pexpect庫的簡單使用方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01
  • Python隨機采樣及概率分布(二)

    Python隨機采樣及概率分布(二)

    之前的《Python中的隨機采樣和概率分布我們介紹了Python中最簡單的隨機采樣函數(shù)。接下來我們更進(jìn)一步,來看看如何從一個概率分布中采樣,我們以幾個機器學(xué)習(xí)中最常用的概率分布為例。
    2022-01-01
  • Django Admin實現(xiàn)上傳圖片校驗功能

    Django Admin實現(xiàn)上傳圖片校驗功能

    這篇文章主要介紹了Django Admin實現(xiàn)上傳圖片校驗功能的相關(guān)資料,需要的朋友可以參考下
    2016-03-03

最新評論

平远县| 巴中市| 安远县| 云梦县| 蓝山县| 普洱| 雷山县| 福建省| 宜兰市| 文安县| 太白县| 岫岩| 南安市| 浮梁县| 天祝| 新民市| 奉化市| 兰西县| 鸡东县| 武川县| 金平| 武清区| 麻江县| 岑巩县| 即墨市| 曲水县| 永善县| 建湖县| 锡林郭勒盟| 洛南县| 延边| 阳谷县| 高邑县| 通城县| 大田县| 抚宁县| 建德市| 合江县| 高清| 凭祥市| 应用必备|