在其他函数中使用返回的变量

时间:2016-01-18 22:35:13

标签: python function python-3.x return

我是python的新手,在定义新函数时我想知道return()内的东西。我想在if __name__ == '__main__':内运行任何代码。我想要一个功能来做到这一点。为什么不赢这项工作?

def money():
    coins = 100
    return coins
def doubleMoney(coins):
    doubleCoins = int(coins * 2)
    return doubleCoins
def printMoney(doubleCoins):
    print("Your coins doubled are:", doubleCoins) 
if __name__ == '__main__':
    money()
    doubleMoney(coins)
    printMoney(doubleCoins)

1 个答案:

答案 0 :(得分:2)

不,那不行。将功能视为机器。你把事情放在一端(参数,也就是“定义新函数时()中的东西”),你在另一端得到了一些东西。你得到的是它不会创建具有某个名称或类似名称的变量。

因此,如果您想使用doubleMoney(coins)的值,则必须对其执行某些操作。在您的示例中,您只需致电doubleMoney(coins)。这将产生一个值,但您不会对其执行任何操作。如果你想让一个函数使用另一个函数返回的值,你必须以某种方式链接它们。您可能正在寻找的是:

coins = money()
doubleCoins = doubleMoney(coins)
printMoney(doubleCoins)

您也可以使用printMoney(doubleMoney(money()))在一行中完成所有操作。

他们关键的一点是,因为你return coins并不意味着money()返回时创建名称的变量。仅返回;如果你想创建一个变量,你必须在函数之外自己做,就像我展示的例子一样。