【发布时间】:2020-05-19 02:45:11
【问题描述】:
def F1():
myvar = 1
myArrayVar = []
def F2():
global myvar, myArrayVar # this will be changed by F2()
myvar = 2
myArrayVar.append(myVar)
print(myvar)
F2()
F1()
所以我在函数中有一个函数。由于 F2() 是递归的,因此我必须将变量存储在外部。
在 C 中,我将两者分开或传递指针,在 Java 中,我将创建对象。但是无论如何,Python 中是否有让我无需太多更改即可快速完成此操作的方法?我不想使用全局变量,myvar 需要保留在F1() 的上下文中
谢谢。
【问题讨论】:
-
您是否在
F2内修改myvar? -
是的。我会稍微更新一下问题。
标签: python function recursion scope