Python Pass по назначению, но значение не сохраняется

У меня проблема с большой базой кода, поэтому я создал небольшой репродуктор ниже:

Здесь у меня есть две следующие функции: func2() и func3().

def func2(a,b):
     a = 'new-value'
     b = b+1
     return a, b

def func4():
     x,y = 'old-value',3
     func2(x,y)
     print(x,y)

Я получаю следующий результат:

>>> func4()
old-value 3

Я думал, что Python - это промежуточное присвоение, и поэтому func4() следует перезаписать x а также y значения по new-value а также 4

Что я не понимаю? Кроме того, как я могу изменить приведенный выше код, чтобы сделатьx, y имеют new-value а также 4

Любая помощь приветствуется!.

0 ответов

Другие вопросы по тегам