python中是否有接受变量的随机函数?
我正在尝试创建一个简单的骰子滚轮,我希望它创建一个介于1和骰子的边数之间的随机数。但是,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
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已经清理了代码以删除不相关的位,但“将不接受变量”是什么意思?这是不明智的。请提供实际收到的错误消息。