https://pypi.org/python
項目結構(參考):https://github.com/fengmm521/pipProjectgithub
先建一個目錄,好比magetool,這個裏邊放的是你的項目代碼。在這個magetool目錄裏,新建一個__init__.py,這個文件裏能夠什麼都不用寫,而後就是你要發佈的.py文件數組
# File Name: setup.py # Author: wusir # Mail: wusir666666@163.com # Created Time: 2019-3-26 ############################################# from setuptools import setup, find_packages setup( name = "InitReadme", version = "0.1.0", keywords = ("pip", "os"), description = "pip test", long_description = "pip test", license = "MIT Licence", url = "https://github.com/wusri66666/InitReadme.git", author = "wusir", author_email = "wusir666666@163.com", packages = find_packages(), include_package_data = True, platforms = "any", install_requires = [],
scripts = [],
entry_points={
'console_scripts':['initcli=initcli.cli:main']
},
)
1.name
name = 「InitReadme」,這個name參數後邊的就是你的項目代碼所在目錄,也是你pip要上傳的項目名稱,其餘人用pip install xxx來安裝時,後邊的xxx就是你的這個InitReadme服務器
2.version
version = 「0.1.0」,你工具的版本號,後期你工具更新了,要用pip來更新包的時候,會更新比當前版本號高的新版本。工具
下邊是pip 更新包的命令測試
pip install --upgrade <包的名字>
pip install -U <包的名字>ui
3.packages
packages = find_packages(),這個參數是導入目錄下的全部__init__.py包url
4.install_requires
install_requires = [],這是一個數組,裏邊包含的是咱的pip項目引用到的第三方庫,若是你的項目有用到第三方庫,要在這裏添上第三方庫的包名,若是用的第三方版本不是最新版本,還要有版本號。spa
在代碼編寫完成,自已測試後沒有問題了,就能夠打包了。 打包使用下邊兩個其中一個命令(我使用的是第二個):
$ python setup.py bdist_egg # 生成相似 edssdk-0.0.1-py2.7.egg,支持 easy_install
$ python setup.py sdist # 生成相似 edssdk-0.0.1.tar.gz,支持 pip
兩個命令打包好以後都會生成build和dist兩個目錄,打包的文件會放在dist目錄下,供後邊上傳到PyPi服務器
twine upload dist/*
執行完這行指令以後,會提示輸入pypi的用戶名和密碼,正常輸入就能夠。