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

相关推荐
qq_2518364573 分钟前
基于java Web网络订餐系统设计与实现 源码文档
java·开发语言·前端
秋99 分钟前
3年经验Python后端转AI Engineer:3个月实战转型计划(2026版)
开发语言·人工智能·python
凡人叶枫19 分钟前
Effective C++ 条款17:以独立语句将 newed 对象置入智能指针
java·linux·开发语言·c++·算法
飞天狗11132 分钟前
零基础JavaWeb入门——第2课:让网页“活”起来 —— JSP是什么?
java·开发语言·前端·后端·web
2601_9563198844 分钟前
期货夜盘无人值守监控什么:断线、无成交与拒单信号
python·区块链
CTA终结者44 分钟前
期货量化目标仓和净持仓对不齐:天勤 TargetPosTask 与 pos 偏差排查
python·区块链
科技林总1 小时前
解决vllm服务漏扫问题
python·安全
醇氧1 小时前
【Linux】Java 服务生产级部署指南:实现常驻后台、开机自启与系统服务化管理
java·开发语言
凡人叶枫2 小时前
Effective C++ 条款16:成对使用 new 和 delete 时要采取相同形式
开发语言·c++·effective c++
不吃土豆的马铃薯2 小时前
C++ 高性能网络缓冲区 Buffer 源码解析
linux·服务器·开发语言·网络·c++