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

如何將自己寫的模塊上傳到pypi

 更新時間:2021年03月11日 15:03:38   作者:古明地盆  
這篇文章主要介紹了如何將自己寫的模塊上傳到pypi,幫助大家更好的理解和學習使用python,感興趣的朋友可以了解下

楔子

我們在安裝第三方包的時候,直接一個pip install xxx命令就搞定了,然后pip會去pypi上尋找我們要安裝的包,然后下載下來。

而pypi(Python Package Index )你可以看成是官方維護的一個大倉庫,專門用來存儲世界各地的程序員編寫的第三方模塊。我們使用pip進行安裝的時候就會去這個倉庫里面找,找到了進行下載,找不到就提示不存在。

當然我們在安裝的時候還可以指定清華源、豆瓣源,因為pypi在國外,下載有時候比較慢,而一旦指定了國內(nèi)的源,那么就不會去pypi上下載了,所以你可以看成國內(nèi)也有倉庫,專門負責搬運pypi里面的內(nèi)容。

上傳模塊至pypi

總共分為三步:編寫模塊、編譯模塊、上傳模塊。

編寫模塊

我們看一下要上傳到pypi的模塊長什么樣子。

  • hanser-module-upload:項目的根目錄
  • hanser:模塊名,我們后面可以使用from hanser import xxx,或者import hanser
  • hanser下面的兩個py文件:相應的代碼
  • LICENSE:開源的 LICENSE,如:Apache License 2.0,MIT License 等等
  • README.md:關于項目的描述,描述如何安裝、使用等情況
  • setup.py:setuptools 的構建腳本

然后我們看看代碼長什么樣子。

# calc.py
def add(x: int, y: int) -> int:
 return x + y
 
 
def sub(x: int, y: int) -> int:
 return x - y
 
# __init__.py
from .calc import add, sub

然后最重要的就是編寫setup.py。

# setup.py 是一個 setuptools 的構建腳本,其中包含了項目和代碼文件的信息
# 如果沒有需要先安裝,pip install setuptools
import setuptools
 
setuptools.setup(
 # 項目的名稱
 name="anser-module-upload",
 #項目的版本
 version="0.0.1",
 # 項目的作者
 author="布諾妮亞",
 # 作者的郵箱
 author_email="hanser@baka.com",
 # 項目描述
 description="簡單的加減運算上傳測試",
 # 項目的長描述
 long_description="簡單的加減運算上傳測試",
 # 以哪種文本格式顯示長描述
 long_description_content_type="text/markdown", # 所需要的依賴 
 install_requires=[], # 比如["flask>=0.10"]
 # 項目主頁
 url="https://www.baidu.com",
 # 項目中包含的子包,find_packages() 是自動發(fā)現(xiàn)根目錄中的所有的子包。
 packages=setuptools.find_packages(),
 # 其他信息,這里寫了使用 Python3,MIT License許可證,不依賴操作系統(tǒng)。
 classifiers=[
  "Programming Language :: Python :: 3",
  "License :: OSI Approved :: MIT License",
  "Operating System :: OS Independent",
 ],
)

編譯

在上傳代碼之前,我們需要將代碼編譯。除了setuptools之外,我們還需要一個模塊wheel,如果沒有則需要安裝。

pip install --user --upgrade setuptools wheel

然后對我們的setup.py進行編譯。

python setup.py sdist bdist_wheel

編譯成功之后會在項目中生成多個目錄,其中有一個dist目錄是我們需要上傳的。

上傳

然后就是上傳了,我們需要前往(https://pypi.org/account/register/)注冊一個賬號,然后再安裝一個模塊:twine,因為上傳需要使用到它。

pip install --user --upgrade twine

安裝完成之后,就可以使用如下命令上傳 dist 文件夾里面的文件。

python -m twine upload --repository pypi dist/*

我們看到上傳成功,下面去頁面看一下。

注意:這里為了區(qū)分,我們把根目錄名和模塊名取得不一樣,我們需要pip install hanser-module-upload,然后在site-packages下面會有一個hanser目錄,也就是我們所使用的模塊。但是一般情況下,這兩者都是一樣的。比如:我們安裝pandas,那么得到的模塊也叫做pandas。

下面就來試一試吧:

成功安裝,當然也是可以使用的。

以后如果我們自己寫了一個比較不錯的模塊的時候,就可以發(fā)布到pypi上面。

以上就是如何將自己寫的模塊上傳到pypi的詳細內(nèi)容,更多關于模塊上傳到pypi的資料請關注腳本之家其它相關文章!

相關文章

  • Jupyter安裝nbextensions,啟動提示沒有nbextensions庫

    Jupyter安裝nbextensions,啟動提示沒有nbextensions庫

    這篇文章主要介紹了Jupyter安裝nbextensions,啟動提示沒有nbextensions庫,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • 詳解python selenium 爬取網(wǎng)易云音樂歌單名

    詳解python selenium 爬取網(wǎng)易云音樂歌單名

    這篇文章主要介紹了python selenium爬取網(wǎng)易云音樂歌單名,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-03-03
  • pycharm 使用心得(一)安裝和首次使用

    pycharm 使用心得(一)安裝和首次使用

    PyCharm 是我用過的python編輯器中,比較順手的一個。而且可以跨平臺,在macos和windows下面都可以用,這點比較好。
    2014-06-06
  • 如何在Python?中獲取單成員集合中的唯一元素

    如何在Python?中獲取單成員集合中的唯一元素

    這篇文章主要介紹了如何在Python?中獲取單成員集合中的唯一元素,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-03-03
  • Python實現(xiàn)批量修改圖片大小

    Python實現(xiàn)批量修改圖片大小

    在日常生活中經(jīng)常有需要調(diào)整圖片大小的需求,一張兩張的還好,但是如果需要幾十張幾百張甚至幾千張,就可以考慮使用Python腳本來執(zhí)行了,下面小編就來和大家分享幾個Python可以批量修改圖片大小的腳本吧
    2023-07-07
  • Python創(chuàng)建日歷實例

    Python創(chuàng)建日歷實例

    這篇文章主要介紹了Python創(chuàng)建日歷實例,不使用Python提供的calendar實現(xiàn),需要的朋友可以參考下
    2014-08-08
  • Python抽象類應用詳情

    Python抽象類應用詳情

    這篇文章主要介紹了Python抽象類應用詳情,抽象類就是控制子類的方法的名稱,要求子類必須按照父類的要求的實現(xiàn)指定的方法,且方法名要和父類保持一致,下文更多相關介紹需要的小伙伴可以參考一下
    2022-04-04
  • windows下Pycharm安裝opencv的多種方法

    windows下Pycharm安裝opencv的多種方法

    這篇文章主要介紹了windows下Pycharm安裝opencv的多種方法,本文給大家分享四種方法,每種方法通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2020-03-03
  • python實現(xiàn)在圖片上畫特定大小角度矩形框

    python實現(xiàn)在圖片上畫特定大小角度矩形框

    這篇文章主要為大家詳細介紹了python實現(xiàn)在圖片上畫特定大小角度矩形框,以及C++的實現(xiàn)方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-10-10
  • Pandas數(shù)值排序 sort_values()的使用

    Pandas數(shù)值排序 sort_values()的使用

    本文主要介紹了Pandas數(shù)值排序 sort_values()的使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-07-07

最新評論

大兴区| 博客| 屏南县| 马鞍山市| 嘉峪关市| 合作市| 孟连| 黄浦区| 南川市| 越西县| 澜沧| 乐亭县| 盐池县| 永胜县| 云梦县| 阳高县| 江华| 自贡市| 闵行区| 资中县| 大石桥市| 都昌县| 沙田区| 新余市| 沾益县| 嘉祥县| 应城市| 长兴县| 云安县| 板桥市| 敖汉旗| 齐河县| 龙门县| 白水县| 四平市| 星子县| 资源县| 稻城县| 阳原县| 象山县| 深水埗区|