我是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)
答案 0 :(得分:2)
不,那不行。将功能视为机器。你把事情放在一端(参数,也就是“定义新函数时()
中的东西”),你在另一端得到了一些东西。你得到的是值它不会创建具有某个名称或类似名称的变量。
因此,如果您想使用doubleMoney(coins)
的值,则必须对其执行某些操作。在您的示例中,您只需致电doubleMoney(coins)
。这将产生一个值,但您不会对其执行任何操作。如果你想让一个函数使用另一个函数返回的值,你必须以某种方式链接它们。您可能正在寻找的是:
coins = money()
doubleCoins = doubleMoney(coins)
printMoney(doubleCoins)
您也可以使用printMoney(doubleMoney(money()))
在一行中完成所有操作。
他们关键的一点是,因为你return coins
并不意味着money()
返回时创建名称的变量。仅返回值;如果你想创建一个变量,你必须在函数之外自己做,就像我展示的例子一样。