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

Python實(shí)現(xiàn)在PyPI上發(fā)布自定義軟件包的方法詳解

 更新時(shí)間:2022年06月11日 11:15:15   作者:趙卓不凡  
在Python中我們經(jīng)常使用pip來安裝第三方Python軟件包,其實(shí)我們每個(gè)人都可以免費(fèi)地將自己寫的Python包發(fā)布到PyPI上。本文我們就將詳細(xì)介紹如何發(fā)布測試包,需要的可以參考一下

1. 引言

在Python中我們經(jīng)常使用pip來安裝第三方Python軟件包,其實(shí)我們每個(gè)人都可以免費(fèi)地將自己寫的Python包發(fā)布到PyPI上,供他人來通過pip進(jìn)行安裝。

在本文中,我們將從一步一步地詳細(xì)介紹如何發(fā)布測試包。

2. 創(chuàng)建PyPI賬號(hào)

網(wǎng)址: https://pypi.org/

我們可以通過上面的鏈接在PyPI官網(wǎng)免費(fèi)創(chuàng)建一個(gè)帳戶。

我們需要先創(chuàng)建一個(gè)帳戶,然后才能發(fā)布測試包。

3. 創(chuàng)建包名

我們可以發(fā)布任意我們想要定義的包名,只要和以前發(fā)布過的包沒有重名過。我們可以快速在網(wǎng)站PyPI上檢查是否有同名包。為了方便示例,我們使用aiway來作為示例的包名。

4. 按照如下格式組織包

需要注意的是我們可以使用任意我們想要發(fā)布的包名來替換上述aiway包名。

上述腳本 src/aiway/__init__.py內(nèi)容如下:

def function():
    print("hello from src/aiway/__init__.py")

腳本 src/aiway/test.py內(nèi)容如下:

def testfunction():
    print("hello from src/aiway/test.py")

腳本LICENSE: 我們這里留白

腳本README.md: 這里可以描述包的用途

腳本pyproject.toml,內(nèi)容如下:

[build-system]
requires = ["setuptools>=42"]
build-backend = "setuptools.build_meta"

我們必須創(chuàng)建該文件

腳本 setup.py,內(nèi)容如下:

from time import time
import setuptools
with open("README.md", "r", encoding="utf-8") as fh:
    long_description = fh.read()
setuptools.setup(
    name="aiway",
    version="0.0.0",
    author="Your Name Goes Here",
    author_email="youremail@gmail.com",
    description="A test package",
    long_description=long_description,
    long_description_content_type="text/markdown",
    url="https://github.com/pypa/sampleproject",
    project_urls={
        "Bug Tracker": "https://github.com/pypa/sampleproject/issues",
    },
    classifiers=[
        "Programming Language :: Python :: 3",
        "License :: OSI Approved :: MIT License",
        "Operating System :: OS Independent",
    ],
    package_dir={"": "src"},
    packages=setuptools.find_packages(where="src"),
    python_requires=">=3.6",
)

5. 安裝 Build & Twine

接著我們通過pip來安裝我們的依賴包,命令如下:

pip install build twine

我們需要用到上述兩個(gè)包來將我們的測試包推送到PyPI。安裝過程如下:

6. 構(gòu)建測試包

接著我們來編譯我們的測試包,命令如下:

python -m build

在將包上載到PyPI之前,我們需要首先使用build構(gòu)建它。上述命令的輸出如下:

上述命令運(yùn)行完成后,我們將會(huì)得到目錄dist 以及 格式為 <package-name>.egg-info的包。如下所示:

7. 上傳測試包

接著我們使用以下命令將包上傳,如下所示:

python -m twine upload dist/*

包twine用來將我們的測試包上傳至PyPI。上述命令執(zhí)行過程中需要輸入我們注冊(cè)的網(wǎng)站的用戶名和密碼。如下所示:

同時(shí)我們可以在網(wǎng)站上看到我們上傳的包,如下:

如果我們只是更新已經(jīng)存在的包的版本,我們可以使用如下命令:

python -m twine upload dist/* --skip-existing

同時(shí)我們可以添加調(diào)試標(biāo)志--verbose,來檢查上述命令執(zhí)行過程中的出錯(cuò)信息,如下:

python -m twine upload dist/* --skip-verbose

8. 總結(jié)

本文重點(diǎn)介紹了如何在PyPI上發(fā)布自定義軟件包的流程,其中每一步都給出了詳細(xì)的解釋和圖解。

到此這篇關(guān)于Python實(shí)現(xiàn)在PyPI上發(fā)布自定義軟件包的方法詳解的文章就介紹到這了,更多相關(guān)Python PyPI發(fā)布自定義軟件包內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python跨平臺(tái)路徑格式不一致的處理方法

    Python跨平臺(tái)路徑格式不一致的處理方法

    你是不是也遇到過 Python 跨平臺(tái)路徑格式不一致的問題?在 Windows、macOS 和 Linux 之間切換時(shí),路徑格式的不同簡直讓人頭疼,今天,我們就來徹底解決這個(gè)問題,并告訴你在實(shí)際開發(fā)和打包時(shí),哪種方法更好用,需要的朋友跟著小編一起來看看吧
    2025-04-04
  • 如何基于Python深度圖生成3D點(diǎn)云詳解

    如何基于Python深度圖生成3D點(diǎn)云詳解

    通常使用TOF等3d攝像頭采集的格式一般只是深度圖,下面這篇文章主要給大家介紹了關(guān)于如何基于Python深度圖生成3D點(diǎn)云的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • python3 正則表達(dá)式基礎(chǔ)廖雪峰

    python3 正則表達(dá)式基礎(chǔ)廖雪峰

    正則表達(dá)式是一種用來匹配字符串的強(qiáng)有力的武器。它的設(shè)計(jì)思想是用一種描述性的語言來給字符串定義一個(gè)規(guī)則,凡是符合規(guī)則的字符串,我們就認(rèn)為它“匹配”了,否則,該字符串就是不合法的
    2020-03-03
  • 淺析python 字典嵌套

    淺析python 字典嵌套

    這篇文章主要介紹了python 字典嵌套的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下
    2020-09-09
  • 基于Python實(shí)現(xiàn)繪制簡單動(dòng)圖的示例詳解

    基于Python實(shí)現(xiàn)繪制簡單動(dòng)圖的示例詳解

    動(dòng)畫是一種高效的可視化工具,能夠提升用戶的吸引力和視覺體驗(yàn),有助于以富有意義的方式呈現(xiàn)數(shù)據(jù)可視化,本文的主要介紹在Python中兩種簡單制作動(dòng)圖的方法,需要的可以了解下
    2023-10-10
  • Python中kivy庫的使用教程詳解

    Python中kivy庫的使用教程詳解

    Kivy是一個(gè)開源Python框架,用于構(gòu)建具有創(chuàng)意和多點(diǎn)觸控功能的用戶界面(UI)應(yīng)用程序,本文主要為大家介紹了一下Kivy的具體使用,需要的可以參考下
    2024-01-01
  • python可視化plotly?圖例(legend)設(shè)置

    python可視化plotly?圖例(legend)設(shè)置

    這篇文章主要介紹了python可視化plotly?圖例(legend)設(shè)置,主要介紹了關(guān)于python?的legend圖例,參數(shù)使用說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,需要的朋友可以參考下賣你具體內(nèi)容
    2022-02-02
  • python request不走代理proxy方式

    python request不走代理proxy方式

    文章主要介紹了在Linux系統(tǒng)中配置代理后,使用Python的request包請(qǐng)求URL時(shí)會(huì)通過代理訪問的情況,并提供了如何在代碼中設(shè)置以避免通過代理訪問的方法
    2024-11-11
  • Python迭代用法實(shí)例教程

    Python迭代用法實(shí)例教程

    這篇文章主要介紹了Python迭代用法,包括了迭代的定義及具體用法,是一個(gè)非常實(shí)用的技巧,需要的朋友可以參考下
    2014-09-09
  • Django 遷移、操作數(shù)據(jù)庫的方法

    Django 遷移、操作數(shù)據(jù)庫的方法

    這篇文章主要介紹了Django 遷移、操作數(shù)據(jù)庫的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-08-08

最新評(píng)論

临朐县| 巴林左旗| 舒兰市| 稷山县| 礼泉县| 略阳县| 灵武市| 迁西县| 五家渠市| 平谷区| 康保县| 大冶市| 肥西县| 邹城市| 临江市| 县级市| 邯郸市| 金门县| 静乐县| 岳阳市| 凤阳县| 五常市| 安西县| 宁远县| 虹口区| 元朗区| 咸宁市| 江川县| 通江县| 霍林郭勒市| 乌兰察布市| 宁夏| 乐昌市| 积石山| 阜平县| 揭东县| 盐边县| 武安市| 股票| 甘泉县| 曲松县|