版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
"""
改变参数的函数
函数的形参只是接受了实参的值,给形参赋值并不影响实参
改变参数值的函数
Python的参数是通过值来传递的
"""
#处理多个银行账户的程序
#列表没有改变,只是列表中的值被改变
#列的指向新值,旧值会在垃圾回收的时候被清楚
def addInterest(balances,rate):
for i in range(len(balances)):
#列表中的值被修改
#Python的参数是通过值来传递的
balances[i] = balances[i]*(1+rate)
def test():
amounts = [1000,105,3500,739]
rate=0.05
addInterest(amounts,rate)
print(amounts)
test()
#利用return返回newBalance就可以更行test中的amount
def addInterest(balance,rate):
newBalance = balance*(1+rate)
return newBalance,rate
def test():
amount = 1000
rate = 0.05
amount = addInterest(amount,rate)
print(amount)
test()
#这个函数智能输出1000,因为形参只是接受了实参的值,并不影响实参的值
def addInterest(balance,rate):
newBalance = balance*(1+rate)
balance = newBalance
def main():
amount = 1000
rate = 0.05
addInterest(amount,rate)
print(amount)
main()