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语言·开发语言·算法·面试·bug
门思科技3 小时前
LoRaWAN 设备类别:Class A、B、C 对比与选型指南
c语言·开发语言·php
limuyang25 小时前
PDF Viewer KMP(基于 chrome 的 PDFium 内核)
android·kotlin
恋恋西风6 小时前
C++ 理解 std::thread 在单核和多核上的行为差异
开发语言·c++
Brilliantwxx6 小时前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
BizzZ_7 小时前
C++(22)——类型转换和IO流
开发语言·c++
小范同学_7 小时前
JDK1.7 与 JDK1.8 HashMap 底层原理对比 + 数组并发扩容死循环详解
java·开发语言
geovindu7 小时前
CSharp: 万年历
开发语言·后端·c#·.net
傲笑风7 小时前
【openvino】tinybert基于openvino服务化部署(四)
人工智能·python·自然语言处理·nlp·bert·openvino
我找到地球的支点啦8 小时前
Matlab系列(009) 一CRC循环冗余校验详解
开发语言·数据结构·算法·matlab·信息与通信