Работя много с много глобални променливи в Python, чиято стойност постоянно трябва да се променя, когато кодът ми напредва. Много добро решение за мен би било да взема глобална променлива като аргумент вътре във функция, но доколкото ми е известно, е възможно да промените глобална променлива вътре във функция само чрез действително именуване на тази конкретна променлива по време на функцията определение. Тъй като работя с много различни имена на променливи, това ще ме принуди да правя много функции за име на променлива.
Това, което искам, е нещо подобно:
x = 5
def foo(_):
global _
_ = 10
return _
foo(x)
print(x)
където x сега ще бъде 10 вместо действителната продукция, която е 5. Кой е най-ефективният начин да постигна това, което искам?
foo
би бил метод. Друг вариант би просто да приписва нова стойност наx
, вместо да я променя на място. - person Mikael   schedule 11.01.2021