骰子记数工具

dice-notation的Python项目详细描述


这种符号广泛应用于桌面游戏,如战争游戏或RPG,以及 是在70年代末为地牢和龙创建的,作为一种允许生成 特定分布中的随机值。

随着岁月的流逝,它已经进化了,虽然它从未经历过正式的 标准化过程在所有的变化中保留了一套核心规则, 主要以“1d6”等格式表示骰子,以及代数的使用 加减运算。

这个项目旨在支持dice符号,允许解析和 在任何python应用程序上使用它。

Dice Notation Tools for Python Pypi package pageDice Notation Tools for Python latest documentationDice Notation Tools for Python development documentation

功能

  • 基于ply的解析器,用于生成dice符号的对象
  • 简单易用的对象来处理符号,只需调用“roll”方法即可
  • 支持普通骰子的类

文档

文档源包含在项目中,用于生成 文档站点:

  • 始终为最新版本生成latest docs,保存在“master”分支中
  • development docs是从“development”分支中的最新代码生成的

您还可以从“docs”中保存的源文件创建文档 文件夹,借助于Sphinx。为此,请使用makefile或make.bat 文件,包含在该文件夹中。

先决条件

该项目已在以下版本的解释器中测试:

  • Python3.4
  • Python3.5
  • python 3.6

所有其他依赖项都显示在requirements.txt文件中。

这些可以安装在:

$ pip install --upgrade-r requirements.txt

安装

该项目作为Pypi package提供,使用pip是首选方法 安装它。为此,请使用以下命令;

$ pip install dice-notation

如果需要,可以手动安装:

$ python setup.py install

用法

应用程序已经用python编码,不需要任何特殊的 框架。

要使用它,只需导入解析器:

from dice_notation.parser import DiceParser

然后用它来解析骰子符号表达式:

parser = DiceParser()
dice = parser.parse('1d6+2')

只要多次调用“roll”方法就可以访问结果 需要,每次调用时将生成一个新的随机值:

print(dice.roll())
print(dice.roll())

测试

项目中包含的测试可以使用以下命令运行:

$ python setup.py test

这将把执行委托给tox。

可以只运行其中一个测试配置文件,在本例中为py36配置文件:

$ python setup.py test -p "py36"

协作

任何有关该项目的帮助都会受到欢迎,提供此类帮助的方式主要有两种:

  • 通过问题管理报告错误并请求扩展
  • 或者分叉存储库并扩展项目

问题管理

问题在githubproject issues tracker中进行管理,其中任何github 用户可能会报告错误或要求新功能。

获取代码

如果您希望分叉或修改代码,请访问GitHub project page,其中 总是保留最新版本。查看“master”分支的最新版本 发布,以及当前稳定的开发版本的“开发”。

许可证

该项目已在MIT License下发布。

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

推荐PyPI第三方库


热门话题
java静态工厂方法如何推断泛型?   Java中长整数与简单整数的比较   java无法使用JPA创建映射实体   java如何尽早停止处理JSP?   java错误:变量可能尚未初始化?   启用安全性时,WAS 855中的java Mbean调用因凭据为空而失败   java如何获取上次拆分后的最后时间间隔?   在java中删除所选图像   来自Guava EventBus订阅服务器的java抛出异常   java抑制异常作为收集多个异常的方法   java重新启动ScheduledExecutorService计划任务的正确方法是什么?   java为什么我得到org。冬眠HibernateeException:未配置CurrentSessionContext   将mouseListener添加到BuffereImage时发生java错误   java如何从<application>   java我一直收到一个错误,说“无法从int转换为Drawable”。我正在尝试将图像分配到位置。有办法解决这个问题吗?   java Android Jsoup证书问题   java Spring找不到HTTPrequest的映射