平时写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多平台公布