欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python包和模塊的分發(fā)詳細介紹

 更新時間:2020年06月19日 09:42:56   作者:BlackMonkey  
這篇文章主要介紹了Python包和模塊的分發(fā),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

發(fā)布Python包

上一篇介紹了如何使用別人的輪子,現(xiàn)在我們討論下如何自己造輪子給別人用。

作為一個流行的開源開發(fā)項目,Python擁有一個活躍的貢獻者和用戶支持社區(qū),這些社區(qū)也可以讓他們的軟件可供其他Python開發(fā)人員在開源許可條款下使用。這允許Python用戶有效地共享和協(xié)作,從其他人已經(jīng)創(chuàng)建的解決方案中受益于常見(有時甚至是罕見的)問題,以及可以提供他們自己的解決方案。

Pypi( Python Package Index) ,公共的模塊存儲中心

準備

distutils

官方庫distutils,使用安裝腳本setup.py來構(gòu)建,安裝包。2000年停止開發(fā)

setuptools

它是替代distutils 的增強版工具集,包含easy_install 工具,使用ez_setup.py文件,支持egg格式的構(gòu)建和安裝,提供查找,下載安裝構(gòu)建,發(fā)布,管理等包管理功能。setuptools是包管理的核心模塊。

pip

目前包管理的事實標準,構(gòu)建在setuptools之上,替代easy_install的,同樣提供豐富的包管理功能、從Python3.4 開始之間包好在安裝文件中。

wheel(輪子)

就光這個名字都如雷貫耳!有沒有~

wheel格式定義在PEP427中wheel文件中不包含.pyc 文件提供bdist_wheel 作為seetuptools的擴展命令,這個命令可以用來生成新打包格式wheelpip 從1.4版本開始 提供了一個wheel子命令來安裝wheel包,當然,需要先安裝wheel模塊。它可以讓Python庫以二進制形式安裝,而不需要本地編譯。

安裝

python -m pip install setuptools wheel twine

至于為什么是Python -m pip 而不是 pip 可參看我的這篇blogpython -m pip

使用setup.py打包

下面 是 verify-python 項目的setup.py文件。

#!/usr/bin/env python3
# _*_ coding: utf-8 _*_
__author__ = "monkey"

from setuptools import setup, find_packages

with open("README.md", "r") as fh:
 long_description = fh.read()

setup(name='verify-python',
 version='0.0.2', # 版本號
 description='An elegant verification code generator.', # 包的介紹
 author='BlackMonkey', # 作者 就是我啦~ 
 author_email='3213322480@qq.com', # 你的郵箱
 url='https://github.com/blackmonkey121/verify', # 項目地址,一般的填git地址 也可以是任意可用的url 不過我喜歡使用 git
 packages=find_packages(), # Python導入包的列表,我們使用find_packages() 來自動收集
 long_description=long_description, # 項目的描述 一般是 string 上文中定義了它
 long_description_content_type="text/markdown", # 描述文檔 README 的格式 一般我喜歡MD. 也可以是你喜歡的其他格式 支不支持我就不知道了~ 估計HTML 是支持的
 license="GPLv3", # 開源協(xié)議
			# 這 需要去官網(wǎng)查,在下邊提供了許可證連接 或者 你可以直接把我的粘貼走
 classifiers=[
 "Programming Language :: Python :: 3", 
 "License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
 "Operating System :: OS Independent"],

 python_requires='>=3.3', # Python 的版本約束
			# 其他依賴的約束
 install_requires=[
 "itsdangerous>=1.1.0",
 "numpy>=1.11.3",
 "opencv-python>=3.4",
 "Pillow>=7.0",
 "rsa>=4.0", ]
 )

許可證獲取

創(chuàng)建分發(fā)

# 生成分發(fā)文件
python setup.py sdist bdist_wheel

如圖在dist 下 存在兩個文件

verify-python-0.0.2.tar.gz # 源碼歸檔文件
verify_python-0.0.2-py3-none-any.whl # 內(nèi)置的發(fā)行版文件

tar.gz文件是源歸檔,.whl文件是 內(nèi)置發(fā)行版。較新的pip版本優(yōu)先安裝內(nèi)置發(fā)行版,但如果需要,將回落到源歸檔文件中。您應(yīng)該始終上傳源檔案,并為項目兼容的平臺提供內(nèi)置檔案。在這種情況下,我們的示例包在任何平臺上都與Python兼容,因此僅需要一個內(nèi)置發(fā)行版。

*.egg-info

應(yīng)該是用來記錄整個包的依賴和文件關(guān)系以及一些其他屬性的東西,沒有不影響包的使用,通常會在打包時生成。

分發(fā)

上傳到Pypi 服務(wù)器上,可以是公有的Pypi服務(wù)器,也可以是公司或組織內(nèi)私有的。
如果需要上傳到公有服務(wù)器,需要注冊賬號注冊

# 加密的上傳
python3 -m twine upload dist/*

總結(jié)

到此這篇關(guān)于Python包和模塊的分發(fā)的詳細介紹的文章就介紹到這了,更多相關(guān)python包和模塊分發(fā)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python列表刪除的三種方法代碼分享

    Python列表刪除的三種方法代碼分享

    這篇文章主要介紹了Python列表刪除的三種方法代碼分享,具有一定參考價值,需要的朋友可以了解下。
    2017-10-10
  • Python 通過調(diào)用接口獲取公交信息的實例

    Python 通過調(diào)用接口獲取公交信息的實例

    今天小編就為大家分享一篇Python 通過調(diào)用接口獲取公交信息的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python Django路徑配置實現(xiàn)過程解析

    Python Django路徑配置實現(xiàn)過程解析

    這篇文章主要介紹了Python Django路徑配置實現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • Python實現(xiàn)mysql數(shù)據(jù)庫中的SQL文件生成和導入

    Python實現(xiàn)mysql數(shù)據(jù)庫中的SQL文件生成和導入

    這篇文章主要介紹了Python實現(xiàn)mysql數(shù)據(jù)庫中的SQL文件生成和導入,首先通過將mysql數(shù)據(jù)導出到SQL文件中展開詳細內(nèi)容需要的小伙伴可以參考一下
    2022-06-06
  • Python關(guān)于拓撲排序知識點講解

    Python關(guān)于拓撲排序知識點講解

    在本篇文章里小編給大家分享了一篇關(guān)于Python關(guān)于拓撲排序知識點講解內(nèi)容,有興趣的朋友們可以學習下。
    2021-01-01
  • Conda創(chuàng)建新環(huán)境的詳細圖文教程

    Conda創(chuàng)建新環(huán)境的詳細圖文教程

    Anaconda功能龐大,其可以理解為一個工具,也是一個可執(zhí)行命令,下面這篇文章主要給大家介紹了關(guān)于Conda創(chuàng)建新環(huán)境的詳細圖文教程,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-01-01
  • 在python 不同時區(qū)之間的差值與轉(zhuǎn)換方法

    在python 不同時區(qū)之間的差值與轉(zhuǎn)換方法

    今天小編就為大家分享一篇在python 不同時區(qū)之間的差值與轉(zhuǎn)換方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python工廠函數(shù)用法實例分析

    Python工廠函數(shù)用法實例分析

    這篇文章主要介紹了Python工廠函數(shù)用法,結(jié)合實例形式分析了Python工廠函數(shù)的概念、功能、使用方法及相關(guān)注意事項,需要的朋友可以參考下
    2018-05-05
  • Python 中 list 的各項操作技巧

    Python 中 list 的各項操作技巧

    最近在學習 python 語言。大致學習了 python 的基礎(chǔ)語法。覺得 python 在數(shù)據(jù)處理中的地位和它的 list 操作密不可分,今天把相關(guān)基礎(chǔ)操作記錄到腳本之家平臺,需要的的朋友參考下
    2017-04-04
  • python編程開發(fā)之類型轉(zhuǎn)換convert實例分析

    python編程開發(fā)之類型轉(zhuǎn)換convert實例分析

    這篇文章主要介紹了python編程開發(fā)之類型轉(zhuǎn)換convert用法,結(jié)合實例形式分析了Python中常見的數(shù)據(jù)類型及類型轉(zhuǎn)換convert的具體使用方法,需要的朋友可以參考下
    2015-11-11

最新評論