Python I';我试图在函数中返回一个随机生成的数字,这样我就可以用它做一些数学运算了

Python I';我试图在函数中返回一个随机生成的数字,这样我就可以用它做一些数学运算了,python,random,Python,Random,我试图创建一个随机生成一个数字的函数,这样另一个函数就可以处理它。我让它做它需要做的事情,但是下一个函数返回一个错误“variable not defined”,我猜变量只存在于作用域中 我尝试在结尾使用return语句,但由于某种原因它没有返回 import random def generator1(): #name of function die_total = 0 #used for iteration for generator1 in range(2): #loop

我试图创建一个随机生成一个数字的函数,这样另一个函数就可以处理它。我让它做它需要做的事情,但是下一个函数返回一个错误“variable not defined”,我猜变量只存在于作用域中

我尝试在结尾使用return语句,但由于某种原因它没有返回

import random

def generator1(): #name of function
    die_total = 0 #used for iteration
    for generator1 in range(2): #loop,generates 2 numbers
        die_roll = random.randint(1,6) #random int generator

        if die_roll % 2 == 0: # depending wether the random is odd or even,5 0r 10 is added
            die_roll += 10
        else:
            die_roll += 5

        die_total += die_roll #used to itterate and obtain a total

    return die_total #the problem,trying to return value of die_total

generator1()

print(die_total)

我希望在打印时有一个随机值。

die\u total
仅存在于
生成器1
函数中(它是它的局部变量)。不过,您可以使用返回值

print(generator1())
或者把它放在一个变量中

your_variable = generator1()
print(your_variable)

我建议您阅读变量作用域,即全局变量和局部变量。谢谢您的建议,但当我同时运行这两个代码时,、或无都是错误的printed@Silver您的
generator
函数中是否还有您问题中示例代码中的
return
函数?我刚刚尝试过,它可以工作。您做了一些更改了吗?我已经删除了return语句,并修改了所有我要更改的内容。请打开,您需要return语句:)