Python项目打包成wheel笔记

2023-05-16

详情参考:https://setuptools.readthedocs.io/en/latest/setuptools.html

Python项目可以使用命名

pip install 包名

安装Python包,可以将自己的Python项目打包,并且可以发布

 

安装必要的Python包

pip install setuptools
pip install wheel

 

以下是将自己的项目快速打包成wheel的笔记:

首先文件目录如下:

和setup.py同级的Test是自己的项目文件夹

command.py文件内容为:

# coding: utf-8

import sys


def start():
    print 'start. . .'
    print 'argv: ', sys.argv  # 执行入口函数时传递的参数


def init():
    print 'init. . .'
    print 'argv: ', sys.argv  # 执行入口函数时传递的参数

setup.py文件内容为:

# coding: utf-8

from setuptools import setup, find_packages

setup(
    name='Test',  # 项目名称,pip show 包名 中的包名
    version='1.0.0',
    packages=find_packages(), # 包含所有的py文件
    include_package_data=True, # 将数据文件也打包
    zip_safe=True,
    entry_points={
        'console_scripts': [ # 命令的入口
            'test_start=Test.command:start',  # test_start命令对应的入口函数为command.py下的start函数
            'test_init=Test.command:init' # test_init命令对应的函数为command.py下的init函数
        ]
    }
)

MINIFEST.in文件内容:

global-include *
global-exclude *.pyc
global-exclude .git
global-exclude .idea

文件编写完成后进入同setup.py同级的目录,运行命令进行打包:

python setup.py bdist_wheel

运行完成后会在setup.py同级目录下生成dist文件夹,文件夹下有

Test-1.0.0-py2-none-any.whl 文件

该文件为项目的打包文件,进入dist文件夹,运行命令:

pip install Test-1.0.0-py2-none-any.whl

安装自己的Python包

可以运行 pip show Test 查看安装包信息

运行入口函数命令:

> test_start
> test_init
> test_start 1 'a' 12.3
> test_init 1 'a' 12.3

https://download.csdn.net/download/t_null/11167244

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python项目打包成wheel笔记 的相关文章

随机推荐

  • CentOS7安装与克隆

    CentOS7安装与克隆 一 新建虚拟机及其配置二 配置虚拟网络编辑器三 安装CentOS 7四 一些工具的安装五 虚拟机克隆六 虚拟机克隆后的配置七 配置ssh免密登陆八 批处理脚本与集群分发脚本1 将家目录配置进环境变量2 批处理脚本3
  • NGINX ./configure详解

    在 34 configure 34 配置中 xff0c with 34 表示启用模块 xff0c 也就是说这些模块在编译时不会自动构建 without 34 表示禁用模块 xff0c 也就是说这些模块在编译时会自动构建 xff0c 若你想N
  • Linux下Nginx安装使用

    一 下载解压nginx span class token comment 进入要放安装包的目录 span span class token builtin class name cd span opt software span class
  • java Collections类 详解

    目录 一 前言 二 Collections类简介 三 Collections类常用方法演示 1 static void reverse List list 代码演示 2 static void shuffle List list 代码演示
  • Activity onNewIntent注意事项

    数据上报发现 xff0c onNewIntent 以后 xff0c onResume和onPause可能不会执行 xff0c 直接执行onStop
  • Python+OpenCV实用案例应用教程:人脸检测和识别

    计算机视觉使很多任务成为现实 xff0c 其中两项任务就是人脸检测 xff08 在图像中定位人脸 xff09 和人脸识别 xff08 将人脸识别为特定的人 xff09 OpenCV实现了一些人脸检测和识别的算法 从安全到娱乐 xff0c 这
  • 基数排序 详细讲解

    1 基数排序 桶排序 介绍 基数排序 xff08 radix sort xff09 属于 分配式排序 xff08 distribution sort xff09 xff0c 又称 桶子法 xff08 bucket sort xff09 或b
  • CentOS7安装docker后服务启动不了

    问题排查 运行yum install docker后 xff0c 安装完成docker 运行 docker info 命令测试docker是否正常 则提示以下错误 xff1a Cannot connect to the Docker dae
  • Linux命令+shell脚本大全:处理损坏的包依赖关系

    有时在安装多个软件包时 xff0c 某个包的软件依赖关系可能会被另一个包的安装覆盖掉 这叫作 损坏的包依赖关系 xff08 broken dependency xff09 如果系统出现了这个问题 xff0c 先试试下面的命令 xff1a y
  • 世界上最简单的无锁哈希表

    英文原文 xff1a preshing xff0c 感谢 64 浅水清流 的热心翻译 如果其他朋友也有不错的原创或译文 xff0c 可以尝试推荐给伯乐在线 以下是译文 无锁哈希表 xff08 Lock Free Hash Table xff
  • nginx ssl及http自动跳转到https配置

    1 Nginx路径配置 如下请求地址 http x x x x 8080 api base test 此时 zo java这个应用接收到的地址是 xff1a http x x x x 8080 api base test location
  • 视图绑定.

    在大多数情况下 xff0c 视图绑定会替代 findViewById 视图绑定功能可按模块启用 要在某个模块中启用视图绑定 xff0c 请将 viewBinding 元素添加到其 build gradle 文件中 xff0c 如下例所示 x
  • 优秀程序员的故事

    A君默默的工作了3年 xff0c 从项目初立 xff0c 到遍地开花 工作不忙 xff0c 工资没长 新领导来了 xff0c 下个版本重新开发 xff0c A君继续维护老版本 新招了一批人 xff0c 加班加点干了半年多 直到版本发布 xf
  • Synchronized锁

    1 Synchronized基本特性回顾 应用场景 xff1a 多线程环境下保证线程的安全性 使用方式 xff1a 1 xff09 Synchronized加在普通方法上 xff0c 使用的是this锁 xff0c 也就是当前对象 2 xf
  • HC-05无底板蓝牙模块连接51单片机,配置,安卓连接传输数据测试程序

    买个蓝牙模块以为是HC 06 xff0c 没有底板 xff0c 测试半天反应 xff0c 后面才发现是HC 05 xff0c HC 05和HC 06的测试方法稍有不同 一 HC 05蓝牙模块连线 先上一个自己的接线 xff08 有点丑 xf
  • java.io.StreamCorruptedException: invalid stream header: 异常

    使用java的对象流出现java io StreamCorruptedException invalid stream header异常 原因是数据发送端发送对象到接收端 接收端对于同一个输入流创建了不同的对象输入流 xff0c 而后用不同
  • insmod: ERROR: could not insert module xxxxx.ko: Unknown symbol in module

    有可能是该模块的相关依赖没有加载 先执行命令 xff1a modinfo xxxx ko 查看 depends xff1a 所依赖的模块 先加载依赖模块 xff0c 然后加载xxxx ko模块
  • Mondo Rescue ---FATALERROR--- Failed to generate boot+data disks

    使用Mondo Rescue制作CentOS7的IOS镜像的时候报错 Mindi failed to create your boot 43 data disks Fatal error Failed to generate boot 43
  • 【Git】常用命令commit提交,push推送,merge,添加分支branch

    一 常用操作 xff1a 1 添加跟踪文件 git add 或 git add A 根据ignore的配置 xff0c 添加跟踪文件 xff0c 其中的 或 A表示添加所有更改过的文件 2 查看状态 git status 3 提交到本地 x
  • Python项目打包成wheel笔记

    详情参考 xff1a https setuptools readthedocs io en latest setuptools html Python项目可以使用命名 pip install 包名 安装Python包 xff0c 可以将自己