使用append

时间:2016-01-06 09:32:38

标签: python

在python中修改函数内的全局变量,我们需要将它声明为函数内的全局“变量”。 例1:

variable = [10]
def function():
    global variable
    variable = [20]
    return
print variable # will print [10]
function()
print variable # will print [20]

如果没有全局,它会将变量视为局部变量,不会修改全局变量。 Exmaple2:

variable = [10]
def function():
    variable = [20]
    return

print variable # will print [10]
function()
print variable # will print [10]

但是我遇到了需要修改全局列表的情况。 但令我震惊的是,我能够使用list对象的“append”功能修改全局列表。我没有在函数中声明变量为全局变量。示例3:

variable = [10]
def function():
    variable.append(20)
    return

print variable # will print [10]
function()
print variable  # will print [10, 20]

我怀疑列表对象的“附加”功能是如何修改全局变量的,而无需访问全局变量?如果有人对此行为有解释,请告诉我。

0 个答案:

没有答案