setuptools封装自己python包

封装python包

setuptools

定义python模块

setup.py文件配置

python 复制代码
from setuptools import setup, find_packages
"""
使用 find_packages 识别包中全部的模块(包含__init__.py 文件)

├── setup.py  # AND/OR setup.cfg, setup.py
└── src
    ├── pkg1
    │   └── __init__.py
    ├── pkg2
    │   └── __init__.py
    ├── additional
    │   └── __init__.py
"install_requires"关键字指定依赖包,安装包的过程将优先安装依赖项
"""
setup(
    name='my_package',
    version='0.1.0',
    # 
    packages=find_packages(
    # 搜索路径"src"
        where = "src",
    # 包含的模块
        include = ["pack*"],
    ),
    author="cd",
    # 包的根目录
    package_dir = {"":"src"},
    # 依赖包
    install_requires=[
        'requests',
        'importlib-metadata; python_version<"3.10"',
    ],
)

官方文档

封装函数

python setup.py sdist

通过上述命令可以得到一个压缩包文件

解压缩可以得到你自己的python包文件

安装

切换到该文件夹下进行安装

pip setup.py install

注意事项

上述步骤安装后的python包不会显示在python环境目录下,需要将该包放置在需要使用的项目下进行调用

相关推荐
不是万能的豆学长21 小时前
filetidy 文件整理助手:一键归类 + 规范重命名(Python 零依赖单文件工具)
大数据·开发语言·python·技术美术
gCode Teacher 格码致知1 天前
Pandas教学-18:number与numeric的区别
python·pandas
梦想不只是梦与想1 天前
Python 中subprocess 模块:执行外部命令
python·subprocess·调用外部命令
懂点Tech1 天前
ctfshow MISC入门图片篇(信息附加):misc41解题思路
开发语言·python
catchadmin1 天前
PHP 8.7 协程新提案 让跨协程代码共享请求身份
开发语言·php
念何架构之路1 天前
go-grpc设计思想
开发语言·后端·golang
吹什么轩1 天前
MySQL:数据类型
android·adb
酷炫码神1 天前
Day 10|Pinia 状态管理:把散落在各组件的数据,收进一个全局仓库
android·开发语言·javascript
Elastic 中国社区官方博客1 天前
我们如何通过 70 多个拉取请求,将 OpenTelemetry Java agent 迁移到 invokedynamic
java·大数据·开发语言·elasticsearch·搜索引擎·全文检索·es
tyn1881 天前
记录本地安装nacos服务的方法及异常
java·开发语言