VicBot骰子滚轮(Python2.7)

2024-06-17 08:25:40 发布

您现在位置:Python中文网/ 问答频道 /正文

老实说,我真的不知道我在做什么。在

我想让VicBot(对于python2.7)可以在命令“/roll xdy”上“掷骰子”,x是骰子的数目,y是骰子的边数。在

因此,更直接地,我需要能够请求x变量≥y,并显示它们“(variable)+(variable)=(sum)”

所有的VicBot都可以在这里找到:https://github.com/Vicyorus/VicBot

(以防你想知道:我确实是在回答完这个问题之前无意中发布了这个问题。)


Tags: https命令githubcom骰子variable老实sum
1条回答
网友
1楼 · 发布于 2024-06-17 08:25:40

我对你的聊天机器人了解不多,也不想深入研究你问题中包含的所有代码(我甚至不清楚其中是否有你编写的代码,而不是机器人附带的示例代码)。在

我能做的就是解决模具的问题。这很简单。您只需要Python的random模块和一些字符串操作和格式化代码。在

import random

def roll_dice(dice_string):
    """Parse a string like "3d6" and return a string showing the die rolls and their sum"""
    number_of_dice, number_of_sides = map(int, dice_string.split("d"))
    rolls = [random.randint(1, number_of_sides) for _ in range(number_of_dice)]
    output_string = "{} = {}".format(" + ".join(map(str(rolls)), sum(rolls))
    return output_string

输出示例:

^{pr2}$

希望代码是非常自解释的。函数中的四个语句都做一件事:解析输入,生成请求的随机数,将它们格式化为字符串以供输出,最后返回字符串。第二行执行实际的随机数生成,可能有助于提取作为一个单独的函数(获取整数参数并返回整数列表)。在

相关问题 更多 >