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环境目录下,需要将该包放置在需要使用的项目下进行调用

相关推荐
小徐不徐说3 小时前
序列化与反序列化:把 C++ 对象可靠地保存下来
开发语言·数据库·c++·php
ragnwang3 小时前
Notes: Python pybind11 import C++ module
开发语言·c++·python
王中阳Go3 小时前
后端转 Agent 岗面试怎么答:8 个高频问题与应答口径
人工智能·后端·python·大语言模型
Wang's Blog3 小时前
Java 项目实战: 交友项目 - 搜索附近的功能概述和分析
java·开发语言·交友
骑着蜗牛撵大象3273 小时前
大模型 Agent 的沙箱护栏:gVisor 隔离、出口白名单与审计闭环
java·开发语言·jvm·安全·agent沙箱·gvisor·microvm
weixin_307779134 小时前
RAG 面试陷阱——混合检索并非无条件优越:一个条件反转实验
人工智能·python·面试·职场和发展
Dxy12393102164 小时前
JS DES 加密详解
开发语言·javascript·arcgis
充值内卷4 小时前
我给桌面加了个鱼缸:C++ 写后端,WebView2 里养一座 Three.js 小岛
开发语言·javascript·c++
云和数据.ChenGuang5 小时前
深入解析 Python 的 dir():从用法到 CPython 源码实现
开发语言·人工智能·python·langchain
nice_lcj5205 小时前
深入理解 Java 反射:从 Class 对象到方法调用(含性能实测 + 迷你 IOC 实战 + 面试考点)
java·开发语言·后端·面试