只是通过一些练习,这个练习要求创建一个会生成随机数的骰子滚筒。该函数的参数应该是(骰子的面数,掷骰数)
如果我只使用 return 它将停止循环。我知道解决这个问题的一种方法是合并答案并打印出来,但是如果答案的数量(或本例中的掷骰数)是一个变量怎么办?
这是我的代码:
#roll_dice
import random
def rolldice(sides, rolls):
start = 1
while start <= rolls:
number = random.randint(1, sides)
start += 1
return number
print rolldice(6, 3)
我怎样才能打印这个:
3
5
2
最佳答案
您可以使用如下列表理解,这将使您的函数返回一个随机数列表:
>>> import random
>>> def rolldice(sides, rolls):
... return [random.randint(1, sides) for _ in xrange(rolls)]
演示:
>>> rolldice(6, 3)
[1, 2, 3]
>>> rolldice(6, 3)
[2, 6, 4]
关于python - 循环可变次数时如何返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37096309/