首页 > 编程语言 >poetry 工具-Python社区的Maven工具

poetry 工具-Python社区的Maven工具

时间:2024-05-03 21:45:00浏览次数:21  
标签:pyproject 项目 Python poetry Maven toml 工具

当初学习 java Maven, 感觉非常太强大了, 集jar包依赖、项目创建、项目发布于一身。 在Python中一直没有找到和Maven对应的工具, pip + requirements.txt 仅仅能解决项目中包依赖的问题, 因为没有一个标准的项目模板, python的项目创建很随性, 另外, python项目打包过程也很麻烦.

poetry 项目能很好解决上面的各个痛点:

  • 使用 pyproject.toml 管理项目的依赖, toml 文件中可以设置不同的group, 比如 test/dev/prod 等
  • 可以在 pyproject.toml 中定义 pypi index 服务器
  • 可以在 pyproject.toml 中增加项目的meta信息, 比如name/version/description/license等
  • 可以在 pyproject.toml 中定义安装后自动执行的脚本
  • 使用 poetry.lock 来锁定依赖包的版本
  • new 命令创建新项目
  • init 命令创建 pyproject.toml 文件
  • install 命令自动安装 pyproject.toml 中定义的依赖包
  • build 命令编译并创建 wheels 包
  • publish 命令向 pypi repository 上传项目包

标签:pyproject,项目,Python,poetry,Maven,toml,工具
From: https://www.cnblogs.com/harrychinese/p/18171647

相关文章

  • python3.2:字典
    字典相比较列表,优势:查找key的需求,列表需要遍历,字典查找速度很快,很方便,定义 特性查找、增加和修改操作 删除操作循环操作 全局函数 ......
  • python(abi)是什么,有什么作用呢
    python(abi)是一个特殊的提供项,用于指定软件包所支持的PythonABI(ApplicationBinaryInterface)版本。PythonABI是一种约定,用于定义Python解释器和扩展模块之间的二进制接口。它确保了不同版本的Python解释器和扩展模块之间的兼容性。ABI(ApplicationBinaryInterface)是一种二......
  • mumu模拟器 MuMuManager.exe是MuMu模拟器12新加入的工具
    前言全局说明MuMuManager.exe是MuMu模拟器12新加入的工具官方说明:https://mumu.163.com/help/20230504/35047_1086360.html一、说明MuMu模拟器12的调用程序MuMuManager.exe在模拟器的安装目录下可以找到,如“X:\ProgramFiles\Netease\MuMuPlayer-12.0\shell>MuMuManager......
  • 轻量化Ubuntu虚拟机工具Multipass
    官网地址https://multipass.run/启动实例(默认情况下您将获得当前的UbuntuLTS)multipasslaunch--namefoo在该实例中运行命令,尝试运行bash(注销或ctrl-d退出)multipassexecfoo--lsb_release-a查看您的实例multipasslist停止和启动实例multipassstopfooba......
  • Linux 性能监控工具
    在Linux系统中有很多流行且经常使用的系统资源监控工具,例如:vmstat、netstat、iostat、ifstat和mpstat,这些工具可用于监控不同系统组件的统计信息,包括:虚拟内存、网络连接和接口、CPU、输入/输出设备等。dool是一款功能强大且灵活的多功能命令行工具,除了提供上述工具提供......
  • python教程3.1:数据类型:字符串+列表list
    一、字符串字符串是⼀个有序的字符的集合,⽤于在计算机⾥存储和表示⽂本信息 常用操作二、列表list[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表⼀个元素特征 1、增加操作   追加,数据会追加到尾部 2、删除操作3、修改操作 4、查找操作 如果......
  • Python深入理解*和**含义和应用
    本文源代码:https://gitee.com/obullxl/PythonCS/tree/master/CS-CY2405Python中*和**很常见禅师在阅读Python代码过程中,经常看到一个函数或方法的入参是*args和**kwargs(如:deffunc(*args,**kwargs)等)形式,或者在调用函数或方法时,在入参的元组和列表前面增加1个*号(如:func(*(1,2,......
  • 【排课小工具】排排课使用文档
    概述该工具致力于解决小学排课问题,通过输入固定格式的课程以及教师等数据,可以快速完成整个年级的排课任务,输出的排课结果遵循自然规律,避免时间冲突,同时尽可能将教师的上课时间分散开。除了输出每个班级的课表外,还附带输出每个教师视角下的课表,使得教师从整体上看到自己的时间安排......
  • 【排课小工具】排课程序设计与实现
    课表的完整性意味着,可分配的节点的数量大小等于课表周数的累加和大小,为了进行完整性检测我需要两个对象:课表模板以及课程对象,从课表模板中获取可分配的节点数,从课程对象中获取该课程的上课周次。用户要求每个班级的课表模板相同,这使得完整性检测容易很多。分级填充需求主要和课程......
  • 【排课小工具】排课程序设计与实现
    课表的完整性意味着,可分配的节点的数量大小等于课表周数的累加和大小,为了进行完整性检测我需要两个对象:课表模板以及课程对象,从课表模板中获取可分配的节点数,从课程对象中获取该课程的上课周次。用户要求每个班级的课表模板相同,这使得完整性检测容易很多。分级填充需求主要和课程......