0
假設我有一個方法foo:的Python:可變從更高的範圍「賦值之前引用的」
def foo(string):
def bar1():
if '1' in string:
string = string[2:]
else:
bar2()
def bar2():
if ('2' in string):
string.insert(5, '1')
else:
string.insert(5, '2')
bar1()
不幸的是,這將返回一個錯誤,說明局部變量string
被賦值之前引用。我認爲該字符串將從foo
的範圍繼承。我錯了嗎?請注意,變量string
實際上是一個列表(對於混淆抱歉)。
嘗試字符串傳遞到BAR1()這樣的:def BAR1(串)。 – Bryan