使用setuptools 打包python 模块

下载 依赖包

pip install setuptools

创建setup.py

复制代码
from setuptools import setup

setup(
    name="msap",
    version="0.0.1",
    author="qinpeng",
    author_email="qinpeng@test.com",
    description="A package containing MSAP",
    py_modules=["msap"],  # 指定单个模块文件
    packages=[],  # 不使用包结构,只使用模块
    install_requires=[
           # "requests>=2.25.1",
           # "pandas>=1.2.0",
    ],  # 依赖包列表
    classifiers=[
        "Programming Language :: Python :: 3",
        "License :: OSI Approved :: MIT License",
    ],
    python_requires=">=3.9",
)

所在文件夹建议与 name 一致

要打包的文件 与 py_modules 保持一致

假设msap.py 的内容如下

复制代码
class MyClass:
    """一个示例类"""
    
    def __init__(self, name):
        self.name = name
    
    def greet(self):
        return f"Hello, {self.name}!"
    
    @staticmethod
    def utility_method():
        return "This is a utility method"

在当前目录下执行

python setup.py sdist # 打tar 包

python setup.py bdist_wheel # 打whl 包 较为流行

成功后 在dist 包会有相应文件

pip install dist/xxxx.whl 即可

相关推荐
c++之路22 分钟前
C++信号处理
开发语言·c++·信号处理
m0_4954964125 分钟前
mysql处理复杂SQL性能_InnoDB优化器与MyISAM差异
jvm·数据库·python
forEverPlume1 小时前
PHP怎么使用Eloquent Attribute Composition属性组合_Laravel通过组合构建复杂属性【方法】
jvm·数据库·python
Aleeeeex1 小时前
RAG 那点事:从 8 份企业文档到能用的问答系统,全过程拆给你看
人工智能·python·ai编程
2301_809204701 小时前
mysql在docker容器中如何部署_利用docker-compose快速启动
jvm·数据库·python
Legendary_0082 小时前
LDR6500:USB‑C DRP PD协议芯片技术详解与应用实践
c语言·开发语言
2301_800976932 小时前
正则表达式
开发语言·python·正则表达式
故事还在继续吗2 小时前
C++20关键特性
开发语言·c++·c++20
码界奇点3 小时前
基于Python的新浪微博数据爬虫系统设计与实现
数据库·爬虫·python·毕业设计·新浪微博·源代码管理