Python 在函数中传递用于修改的局部变量
Python passing local variables for modification in function
我正在尝试弄清楚如何将局部变量传递给函数,然后 returning 修改后的值。我写了下面的代码:
def main():
change = 150
coins = 0
quarter = 25
while (change >= quarter):
change = change - quarter
coins += 1
print(coins)
if __name__ == "__main__":
main()
但我希望能够像这样提取零钱和硬币变量的修改:
def main():
change = 150
coins = 0
quarter = 25
while (change >= quarter):
count (change, coins, quarter)
def count(change, count, n):
change = change - n
count += 1
return change, count
if __name__ == "__main__":
main()
但是,我知道这不是解决问题的方法。据我了解,尝试 return 函数中的多个变量可能存在问题,但当我尝试仅修改计数函数中的 change 变量时似乎也存在问题。
如果有任何建议,我将不胜感激。
您要从 count()
返回两个值,因此您应该在调用它时捕获这些值:
while (change >= quarter):
change, coins = count(change, coins, quarter)
修改 ch
和 co
内部 count()
不会影响外部值 change
和 coins
.
我正在尝试弄清楚如何将局部变量传递给函数,然后 returning 修改后的值。我写了下面的代码:
def main():
change = 150
coins = 0
quarter = 25
while (change >= quarter):
change = change - quarter
coins += 1
print(coins)
if __name__ == "__main__":
main()
但我希望能够像这样提取零钱和硬币变量的修改:
def main():
change = 150
coins = 0
quarter = 25
while (change >= quarter):
count (change, coins, quarter)
def count(change, count, n):
change = change - n
count += 1
return change, count
if __name__ == "__main__":
main()
但是,我知道这不是解决问题的方法。据我了解,尝试 return 函数中的多个变量可能存在问题,但当我尝试仅修改计数函数中的 change 变量时似乎也存在问题。 如果有任何建议,我将不胜感激。
您要从 count()
返回两个值,因此您应该在调用它时捕获这些值:
while (change >= quarter):
change, coins = count(change, coins, quarter)
修改 ch
和 co
内部 count()
不会影响外部值 change
和 coins
.