需要创建一个Python2.7骰子滚轮,它决定一个角色的状态

需要创建一个Python2.7骰子滚轮,它决定一个角色的状态,python,Python,我需要创建一个简短的程序,允许用户使用掷骰子的方法创建统计数据。 它必须创建两个不同的属性,一个力量属性和一个技能属性。对于要创建的这些,它有一个12面骰子和一个4面骰子。然后,12面骰子的值除以4面骰子的强度属性,然后对技能属性重复此操作。 仅此而已,我不知道该怎么办,任何帮助都将非常感谢 我肯定会看看stdlib中的随机模块 然后你可以做一些事情,比如: import random random.randint(1,12) # which produces random number b

我需要创建一个简短的程序,允许用户使用掷骰子的方法创建统计数据。 它必须创建两个不同的属性,一个力量属性和一个技能属性。对于要创建的这些,它有一个12面骰子和一个4面骰子。然后,12面骰子的值除以4面骰子的强度属性,然后对技能属性重复此操作。
仅此而已,我不知道该怎么办,任何帮助都将非常感谢

我肯定会看看stdlib中的随机模块

然后你可以做一些事情,比如:

import random

random.randint(1,12) 
# which produces random number between 1-12
这应该能让你走了。

简单的答案是(正如myusuf3所指出的):

不管你是否想要分数

现在,如果你以后在游戏中使用更多的骰子(用于攻击骰、技能骰等)和不同数量的骰子(d4、d6、d8、d10)等,你可以创建自己的骰子等级(对于你的例子来说,这肯定是杀伤力过大,但我将简要介绍一下,只是给你一个想法):

因此,在开始时,您可以实例化您的骰子:

d4 = Die (4)
d6 = Die (6)
d10 = Die (10)
现在,如果您使用5d10进行伤害掷骰,您可以简单地键入:

damageRoll = d10.roll (5)
--

为了让这个想法更进一步,你可以用ADnD伤害符号创建自己的武器等级(例如2d4+1,意思是四边掷两个骰子,结果相加1):


欢迎来到StackOverflow!你试过什么?(我相信你知道,StackOverflow不仅仅是为你写一个项目)听起来像是家庭作业。显示一些代码
我不知道该怎么处理这个
。给你们的建议只能是——学习一些关于Python和数学的书。关闭此问题(因为,这里没有人会回答您的问题),然后创建一个新的问题,在这里您可以向我们提供部分可能无法工作的代码,并描述您的问题。欢迎来到StackOverflow,祝你好运@是的,更新了!键盘人。是的,我有一些类似的东西,只是不确定是否要用它,我可能应该把我的代码放进去,只是没有那么多,很抱歉。谢谢。:)@用户2047 609考虑如果它解决了你的问题接受它。答:非常感谢你,我可能应该把我的代码,只是它不是那么多,很抱歉。谢谢大家回答我的问题,非常有帮助。
class Die:
    def __init__ (self, sides):
        self.sides = sides

    def roll (self, times = 1):
        return sum (random.randint (1, self.sides) for _ in range (times) )
d4 = Die (4)
d6 = Die (6)
d10 = Die (10)
damageRoll = d10.roll (5)
import random
import re

class Weapon:
    def __init__ (self, name, dmg):
            self.name = name
            self.dmg = dmg
            self.dice, self.sides, mod, iMod = re.match ('(\\d*)d(\\d+)(?:([+-])(\\d+))?', dmg).groups ()
            self.dice = int (self.dice) if self.dice else 1
            self.sides = int (self.sides)
            self.mod = 0 if not iMod else int (iMod) * (-1 if mod == '-' else 1)

    @property
    def damage (self):
        return max (0, sum (random.randint (1, self.sides) for x in range (self.dice) ) + self.mod)

w = Weapon ('Bad ass katana', '4d10+8')
for i in range (10):
    print (w.damage)