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

相关推荐
cc_瀚海知行2 分钟前
工具调用 6|助手什么时候该停下来?
java·服务器·前端·人工智能·python·ai
想做小南娘,发现自己是女生喵6 分钟前
QT项目实战第一周(嵌入式)
开发语言·qt
学逆向的13 分钟前
C 可变量参数
c语言·开发语言·网络安全
andyweike13 分钟前
kotlin dsl library工程怎么配置
android·开发语言·kotlin
溪语流沙17 分钟前
【Web全栈进阶】Nginx反向代理 + HTTPS:正式上线
前端·vue.js·python·nginx·https·fastapi
啵啵啵鱼18 分钟前
九、JDBC 操作 MySQL 数据库
android·数据库·mysql
huaweichenai20 分钟前
php搭建mcp服务
开发语言·php·ai编程
全栈弄潮儿24 分钟前
Python实战第11期:面向对象编程基础
后端·python·编程语言
用户693717500138425 分钟前
当我说 Claude 搭配 GLM-5.3-Flash 太好用了,同事却提醒我:你可能正在失去对代码的掌控
android·后端·ios
张小姐的猫31 分钟前
【MySQL】数据类型
android·linux·数据库·c++·mysql·adb·php