为什么Python将我的变量放在我的函数之外?

时间:2016-09-05 21:13:27

标签: python python-3.x

我从Python开始。我喜欢尝试新语言。所以我对范围和Python有一个“简单”的问题。

这是一个递归函数

def foo(myarray)
  if myarray == False: 
    myarray = [[0] * 5 for _ in range(5)]
    myarray[0][0] = 1
  "some code ..."
  foo(myarray)

myarray = False
foo(myarray)

我不想在全球环境中分享我的var“myarray”。我希望只在不在外面的函数中使用Python范围“myarray”。但Python分享了“myarray”,因为它是一个全局变量。如何将范围限制在函数中?

1 个答案:

答案 0 :(得分:1)

忽略无数的语法错误,您的myarray变量似乎是全局声明的,这就是为什么它具有全局范围?