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

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

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

1. 引言

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

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

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

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

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

我們需要先創(chuàng)建一個帳戶,然后才能發(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

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

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

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

python -m build

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

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

7. 上傳測試包

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

python -m twine upload dist/*

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

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

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

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

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

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

8. 總結(jié)

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

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

相關(guān)文章

  • Python跨平臺路徑格式不一致的處理方法

    Python跨平臺路徑格式不一致的處理方法

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

    如何基于Python深度圖生成3D點云詳解

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

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

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

    淺析python 字典嵌套

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

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

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

    Python中kivy庫的使用教程詳解

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

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

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

    python request不走代理proxy方式

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

    Python迭代用法實例教程

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

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

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

最新評論

高碑店市| 舞阳县| 红河县| 沈丘县| 彰武县| 和静县| 黄石市| 安泽县| 万山特区| 浦县| 双牌县| 肥东县| 壤塘县| 通许县| 安岳县| 佛学| 南溪县| 介休市| 库尔勒市| 桐梓县| 嘉峪关市| 古交市| 芦溪县| 静宁县| 大港区| 德安县| 定南县| 富源县| 富宁县| 华宁县| 洛隆县| 清原| 枞阳县| 武胜县| 赤壁市| 随州市| 伊川县| 桐柏县| 灌南县| 呼和浩特市| 都安|