Python 为什么我计算银行利息的脚本没有返回?

Python 为什么我计算银行利息的脚本没有返回?,python,python-3.x,Python,Python 3.x,我试图编写一个脚本来计算列表的银行利息,但它始终没有返回任何结果。我不明白为什么会发生这种情况。不需要归还任何东西,只要这样做。当您将其作为参数传递时,Python会更改数量 def Interest(balances,rate): for i in range(len(balances)): balances[i] = balances[i] * (1+rate) def main(): amounts = [1000,500] rate = 0.05

我试图编写一个脚本来计算列表的银行利息,但它始终没有返回任何结果。我不明白为什么会发生这种情况。

不需要归还任何东西,只要这样做。当您将其作为参数传递时,Python会更改数量

def Interest(balances,rate):
    for i in range(len(balances)):
        balances[i] = balances[i] * (1+rate)
def main():
    amounts = [1000,500]
    rate = 0.05
    amounts = Interest(amounts,rate)
    print(amounts)

main()

您需要使用
return
语句才能让函数返回任何内容。在这里,您需要将
返回余额
添加到您的
兴趣
函数中。您期望的输出是什么?因为您不返回任何内容,所以您的函数返回
。您期望函数返回什么?我是说,这是可行的,但您的结果依赖于
列表
的可变性。当OP尝试使用其他东西时,例如
int
或字符串,这只会使它更加混乱。如果他不想更改原始数组,他最好使用临时数组,而不是返回临时数组。好吧,你可以这样做,但最好不要改变输入
def Interest(balances,rate):
    for i in range(len(balances)):
        balances[i] = balances[i] * (1+rate)
def main():
    amounts = [1000,500]
    print(amounts)
    rate = 0.05
    Interest(amounts,rate)
    print(amounts)
    
main()