python中是否有接受变量的随机函数?

python中是否有接受变量的随机函数?,python,random,Python,Random,我正在尝试创建一个简单的骰子滚轮,我希望它创建一个介于1和骰子的边数之间的随机数。但是,randint将不接受变量。有没有办法做我想做的事 代码如下: import random a=0 final=0 working=0 sides = input("How many dice do you want to roll?") while a<=sides: a=a+1 working=random.randint(1, 4) final=final+workin

我正在尝试创建一个简单的骰子滚轮,我希望它创建一个介于1和骰子的边数之间的随机数。但是,
randint
将不接受变量。有没有办法做我想做的事

代码如下:

import random
a=0
final=0
working=0

sides = input("How many dice do you want to roll?")

while a<=sides:
    a=a+1
    working=random.randint(1, 4)
    final=final+working

print "Your total is:", final
随机导入
a=0
最终=0
工作=0
sides=输入(“您要掷多少骰子?”)
而尝试随机范围(1,5)


您需要将边传递给
randint
,例如:

working = random.randint(1, int(sides))

此外,在python-2.x中使用
input
也不是最佳实践。请改用
raw\u input
,您需要自己转换为数字,但这样更安全。

random.randint接受变量作为其两个参数之一。我不确定你到底有什么问题

这对我很有用:

import random

# generate number between 1 and 6
sides = 6
print random.randint(1, sides)

如果看起来你对骰子的数量和边的数量感到困惑

我已将代码更改为使用
raw\u input()
<不建议使用代码>输入()
,因为Python 逐字计算用户输入,这可能是恶意python代码

import random
a=0
final=0
working=0

rolls = int(raw_input("How many dice do you want to roll? "))
sides = int(raw_input("How many sides? "))

while a<rolls:
    a=a+1
    working=random.randint(1, sides)
    final=final+working

print "Your total is:", final
随机导入
a=0
最终=0
工作=0
rolls=int(原始输入(“您想要掷多少骰子?”)
边=整数(原始输入(“多少边?”)

虽然aI已经清理了代码以删除不相关的位,但“将不接受变量”是什么意思?这是不明智的。请提供实际收到的错误消息。