面向对象的semver包优化变体

csemver的Python项目详细描述


csemver

csemver是semver的面向对象优化版本。它更加一致,因为所有操作只需要一个对象。

功能

增加版本

增加不同版本csemver提供了三种方法

  • incmajor
  • incminor
  • 增量补丁
fromcsemverimportcsemverasVersiona=Version();print(a)a.incMajor();print(a)a.incMinor();print(a)a.incPatch();print(a)
foo@bar:~$ python test.py
0.1.01.0.01.1.01.1.1

覆盖版本

要覆盖当前版本,只需为csemver.number设置一个新的semver字符串

fromcsemverimportcsemverasVersiona=Version();print(a)a.number="1.0.0-pre+build.1";print(a)
foo@bar:~$ python test.py
0.1.0
1.0.0-pre+build.1

重置版本

删除number属性以将版本重置为0.1.0

fromcsemverimportcsemverasVersiona=Version("1.0.0");print(a)dela.numberprint(a)
foo@bar:~$ python test.py
1.0.0
0.1.0

比较不同版本:

您可以将csemver实例与>, >=, ==, !=, <=, <

fromcsemverimportcsemverasVersiona=Version("1.1.1")b=Version("1.1.1")repr(a)repr(b)print(a<b)b.incPatch()print(b)print(a<b)
foo@bar:~$ python test.py
Version<1.1.1> instance at 0x00000159D2061BA8
Version<1.1.1> instance at 0x00000159D2061DD8
False
1.1.2
True

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java我想访问同一类的不同函数中的函数变量   创建字段/值哈希映射的java反射   java Velocity工具向后兼容性?   cmd JAVA运行时错误:发生JNI错误   java spring引导示例hateoas不工作   java为什么Android Studio和gradle可以使用不同的类路径进行单元测试?   java Selenium Firefox驱动程序初始化   java如何在jar中重新定位gradle依赖项的包   java为什么我的单线程hello world应用程序使用22个OS线程?   正则表达式替换Java字符串中的特殊字符   在任何派生类的构造函数之后运行方法的java   java从输入字符串中找出日期   带有libGdx(Java)音乐的安卓studio可以在Android模拟器上工作,但不能在桌面上工作   java我在getconnection的参数方面有错误吗?   java使用JFileChooser访问选定文件   java如何将Json解析为另一个活动   java使用Resources for html和rest server   java更新列表,列表内容来自循环中的方法   java如何在GLSL中读取完整范围的32位整数纹理