Search code examples
pythonpython-3.xmethodsreturn

Python method not returning value


I am having issues with values being returned exactly as they are passed to a method despite being modified inside the method.

def test(value):
    value+=1
    return value

value = 0
while True:
    test(value)
    print(value)

This stripped-down example simply returns zero every time instead of increasing integers as one might expect. Why is this, and how can I fix it?

I am not asking how the return statement works/what is does, just why my value isn't updating.


Solution

  • You need to assign the return'd value back

    value = test(value)