代码结构html
- dir_name - src - __init__.py - package_name - __init__.py - module1.py - module2.py - setup.py
下面是一个简单的setup.py文件,详细的参数配置能够参考 An Introduction to Distutilspython
# 编写完包源码后,python setup.py sdist生成pip压缩包# 解压压缩包,python setup.py install 安装本身的包,就能够引用了from distutils.core import setupfrom setuptools import find_packagessetup(name='package_name', # 包名 version='2020.4.10', # 版本号 description='', long_description='', author='your_name', author_email='xxx@qq.com', url='xxx', license='', install_requires=[], classifiers=[ 'Intended Audience :: Developers', 'Operating System :: OS Independent', 'Natural Language :: Chinese (Simplified)', 'Programming Language :: Python', 'Programming Language :: Python :: 3', 'Programming Language :: Python :: 3.6', 'Topic :: Utilities' ], keywords='', packages=find_packages('src'), # 必填 package_dir={'': 'src'}, # 必填 include_package_data=True, )
package_name/__init__.py
内容以下后端
from __future__ import absolute_import# 上面👆这个必须位于文件开头,不然后面运行会报错from .module1 import *from .module2 import *
module1.py 代码以下学习
# 加法def add(a,b): return a+b
module2.py 代码以下ui
# 减法def sub(a,b): return a-b# 乘法def mul(a,b): return a*b
在 dir_name 目录下执行 python setup.py sdist
url
生成 pip 压缩包, 没有这刷新项目 进入 packet_demo/dist
文件夹,执行 pip install xxx(本身包名,自由替换).tar.gz
spa
安装后,就能够直接调用了code
import package_nameprint(package_name.add(1,2))
在上传以前,能够先经过命令校验 setup 写错了没有: python setup.py check
cdn
若是只有 running check
没有输出任何错误,则说明格式正确。htm
而后须要在这里注册一个 PyPI 的账号,注册完成以后,就能够将这个代码库注册到 PyPI 了:
https://pypi.org/
注册之后就能够打包上传了
# 打包 python setup.py sdist # 安装上传组件 pip install twine # 上传 twine upload ./dist/xxx(本身包名,自由替换).tar.gz` 会让你输入帐号密码
最后去 PyPI 上看下咱们刚刚上传的库
试试看咱们本身发布的库 pip install package_name
import package_nameprint(package_name.add(1,2))
/portal/topic-profile/topic-profile?group_id=13104376420761002&invite_ticket=BgAA3BTMQI66ZMBHZCquCoRl_w&topic_id=6&fromScene=bizArticle
关注「 锐门玩道 」,回复「 资源 」领取更多 先后端学习资源