掷多个骰子的模块。

dice-rolling的Python项目详细描述


掷骰子

此模块旨在实现多种类型骰子的投掷。在

安装

只需运行:

pip install dice-rolling

CLI使用

安装完成后,可通过以下方式进行6面简单模具的投掷:

^{pr2}$

或者,例如,掷三个20面骰子可以简单到:

$ roll 3d20
Rolled 3d20 and got 36. [14, 9, 13]

模块使用

要使用此模块,您应该使用类RollBuilder来实现throws:

fromdice_rollingimportRollBuilderbuilder=RollBuilder()builder.set_amount_of_dice(3)builder.set_number_of_sides(20)builder.build()print(builder.get_result())

投掷

请求必须以xdy开头,其中x是骰子的数目,y是每个骰子的面数。在

例如,要掷4个6面骰子:

$ roll 4d6
Rolled 4d6 and got 16. [5, 2, 3, 6]

之后,实现了以下修饰符 (参考前面的结果):

  • +a:将a的值加到每个骰子上。 例如,掷4个6面骰子,每次掷3个骰子:

    $ roll 4d6+3
    Rolled 4d6+3 and got 28. [8, 5, 6, 9]
  • khbK保持H最大b。 例如,掷4个6面骰子并保持最高的2:

    $ roll 4d6kh2
    Rolled 4d6kh2 and got 11. Kept [5, 6] and discarded [3, 2].
    
  • klcK保持L最下面的c。 例如,要掷4个6面骰子并保持最低的2个:

    $ roll 4d6kl2
    Rolled 4d6kl2 and got 5. Kept [2, 3] and discarded [5, 6].
    

当然,您可以将加法与任何keep操作一起使用:

$ roll 4d6+5kh2
Rolled 4d6+5kh2 and got 21. Kept [11, 10] and discarded [8, 7].

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

推荐PyPI第三方库


热门话题
java如何从数组中打印int值?   prepared语句Java中奇怪的异常PreparedStatement:参数索引超出范围   封装如何在OOP Java中为主方法编码?   java某些手机显示快捷方式徽章需要什么权限?   java TextView不会随OnItemSelectedListener更改   java注释处理器不会自动触发吗?   java Spring JPA如何计算外键数   c#对于这个简单的OOAD问题,哪种设计最优雅?   java如何处理while循环中的异常?   Android Studio错误:进程'command'/home/draven/Downloads/安卓studio/jre/bin/java''结束,退出值为非零2   在使用Payara服务器的Vaadin应用程序中导航到根目录时,java将丢失上下文根目录   使用contentType application/json而不是application/jsonpatch+json的java修补程序   带有tomcat的java HAproxy连接不足   Java:在应用过滤器后创建一个简单的通用方法进行计数   java如何使用多态性创建一个实例化对象的方法,然后用它们高效地填充ArrayList?