随机掷骰子两次python

时间:2011-11-07 19:31:37

标签: python random

我需要两次随机运行六面骰子并返回它们的总和。我不确定这是否正确,但我不认为是,我仍然在学习python,所以当涉及到这种东西时我就是新手。

import random

def roll_die():
    roll1 = random.randint(1,6)
    roll2 = random.randint(1,6)
    total = roll1 + roll2

    return total

3 个答案:

答案 0 :(得分:2)

有效。

最佳做法是通过调用:

来初始化随机生成器
random.seed()

在脚本的开头,即使没有必要,省略它也不是一个错误。

如果您想测试它,请添加以下内容:

print(roll_die())

在脚本的末尾,要打印结果,因为 return 关键字不会在屏幕上打印任何内容,它只用于让函数的结果出来。

答案 1 :(得分:0)

之后你应该调用你的函数:print roll_die()

答案 2 :(得分:0)

这将完全符合您的要求。有关详细信息,请在交互式解释器中使用help(something)

>>> import random
>>> help(random.randint)
Help on method randint in module random:

randint(self, a, b) method of random.Random instance
    Return random integer in range [a, b], including both end points.

你也可以用蛮力的方式测试它:

>>> valid_numbers = list(range(2, 13)) # You can just use range(2, 13) in python 2.x
>>> valid_numbers
[2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
>>> while len(valid_numbers) > 0:
...     roll = roll_die()
...     if roll in valid_numbers:
...         print(roll)
...         valid_numbers.remove(roll)
...
4
10
5
7
6
8
11
9
3
2
12

当然,您的参赛作品应与我的参赛作品不同。