我怎样才能让 Python 3 中的一个函数变成 return 一个我可以在另一个函数中使用的值?
How can I get a function in Python 3 to return a value that I can use in another function?
我需要在 python 中设计一个蛇梯游戏,其中一部分需要能够掷骰子并获得随机值。为此,我导入了 random 然后编写了下面的函数。但是,显然,我随后需要能够在游戏的其他功能中使用骰子值。我如何获得它以便保留值 python returns 并能够在另一个函数中使用。
下面是我编写的用于掷骰子的函数。但是,当我然后 运行 这个函数然后再尝试 print(dice_value)
时,程序告诉我 dice_value
没有被定义。
有人能帮忙吗??
import random
def roll_dice():
dice_value = random.randint(1,6)
print("Its a..." + str(dice_value))
return dice_value
变量 dice_value
仅存在于您的函数 roll_dice()
中。它是一个 局部变量 。
您需要使用以下方式调用您的函数:
my_variable = roll_dice()
现在函数的结果存储在变量my_variable
中,您可以打印它了。
您必须将 return 值保存在某处,然后使用它或将其传递给另一个函数。
例如:
>>> import random
>>> def roll_dice():
... dice_value = random.randint(1,6)
... print("[in roll_dice] Its a..." + str(dice_value))
... return dice_value
...
>>> obtained_dice = roll_dice()
[in roll_dice] Its a...1
>>> print("[outside roll_dice] Its a..." + str(obtained_dice))
[outside roll_dice] Its a...1
变量dice_value
是函数内的一个局部变量space所以你必须return把它保存在另一个变量中才能继续使用它
您可以将函数 roll_dice() 的 return 值存储在一个变量中,该变量将在 return 中存储 return 变量的值(dice_value).
random_dice_value = roll_dice()
注意:Python是解释型语言,实现后需要调用函数。它将逐行执行文件。
问题是您试图在其范围之外调用变量 dice_value
。如果您仍然继续使用单行打印语句,则可以通过调用函数(返回 dice_value
变量)来实现,如:
print(roll_dice())
我需要在 python 中设计一个蛇梯游戏,其中一部分需要能够掷骰子并获得随机值。为此,我导入了 random 然后编写了下面的函数。但是,显然,我随后需要能够在游戏的其他功能中使用骰子值。我如何获得它以便保留值 python returns 并能够在另一个函数中使用。
下面是我编写的用于掷骰子的函数。但是,当我然后 运行 这个函数然后再尝试 print(dice_value)
时,程序告诉我 dice_value
没有被定义。
有人能帮忙吗??
import random
def roll_dice():
dice_value = random.randint(1,6)
print("Its a..." + str(dice_value))
return dice_value
变量 dice_value
仅存在于您的函数 roll_dice()
中。它是一个 局部变量 。
您需要使用以下方式调用您的函数:
my_variable = roll_dice()
现在函数的结果存储在变量my_variable
中,您可以打印它了。
您必须将 return 值保存在某处,然后使用它或将其传递给另一个函数。
例如:
>>> import random
>>> def roll_dice():
... dice_value = random.randint(1,6)
... print("[in roll_dice] Its a..." + str(dice_value))
... return dice_value
...
>>> obtained_dice = roll_dice()
[in roll_dice] Its a...1
>>> print("[outside roll_dice] Its a..." + str(obtained_dice))
[outside roll_dice] Its a...1
变量dice_value
是函数内的一个局部变量space所以你必须return把它保存在另一个变量中才能继续使用它
您可以将函数 roll_dice() 的 return 值存储在一个变量中,该变量将在 return 中存储 return 变量的值(dice_value).
random_dice_value = roll_dice()
注意:Python是解释型语言,实现后需要调用函数。它将逐行执行文件。
问题是您试图在其范围之外调用变量 dice_value
。如果您仍然继续使用单行打印语句,则可以通过调用函数(返回 dice_value
变量)来实现,如:
print(roll_dice())