平时写Python,须要用到一个新包时,习惯了pip install packageName,写多了就会想,这些包都是怎么来的?本人能不能"制作"一个,任何人也都能够通过pip装置?
有此想法,躬行实践.答案显然是必定的,而且难度也绝没有想的那样大,或者说 It is easy
.
1.编写代码
如要制作的包名为dashen
,新建如下目录构造
- 其中两个
__init__.py
为空即可 - README.md写一些该package的介绍,非必选
your_func.py
是具体的性能实现,在此示例如下:
def dashen_address(): print('www.dashen.tech')def dashen_master(): print('shuang.cui')def author_hometown(): print('山东邹平')
setup.py
内容如下:
import setuptoolswith open("README.md","r") as fh: long_description = fh.read()setuptools.setup( # 包的散发名称,应用字母、数字、_、- name="dashen", # 版本号, 版本号标准:https://www.python.org/dev/peps/pep-0440/ version="0.0.1", # 作者名 author="fliter", # 作者邮箱 author_email="i@dashen.tech", # 包的简介形容 description="我的第二个python包", # 包的具体介绍(个别通过加载README.md) long_description=long_description, # 和上条命令配合应用,申明加载的是markdown文件 long_description_content_type="text/markdown", # 我的项目开源地址 url="https://dashen.tech", # 如果我的项目由多个文件组成,咱们能够应用find_packages()主动发现所有包和子包,而不是手动列出每个包,在这种状况下,包列表将是example_pkg packages=setuptools.find_packages(), # 对于包的其余元数据(metadata) classifiers=[ # 该软件包仅与Python3兼容 "Programming Language :: Python :: 3", # 依据MIT许可证开源 "License :: OSI Approved :: MIT License", # 与操作系统无关 "Operating System :: OS Independent", ],)
2.账号注册及打包
- 注册Pypi
- 更新pip,setuptools和wheel
pip install --upgrade pip setuptools wheel
- 切换到setup.py的同级目录,进行打包
python setup.py sdist
会呈现两个新文件
3.上传
上传Pypi
pip install twine
(如果曾经装置twine,跳过此步骤)
python -m twine upload dist/*
输出Pypi的账号及明码
4.查看及测验
<font color:"red">完结,撒花</font>
本文由mdnice多平台公布