|
|
1
8
根据经验,作用域创建在三个位置:
(有一些例外。) 分配给名称会将其保留在作用域命名空间中,在到达第一个分配之前标记为未绑定。所以对于一个心智模型,你要给作用域中的名字赋值。 |
|
|
2
2
我相信python对局部变量使用函数作用域。也就是说,在任何给定的函数中,如果将一个值赋给一个局部变量,则该值从该时刻起在该函数中可用,直到它返回。因此,由于您的代码的两个分支都保证分配给
注意,当您还可以访问外部函数中声明的变量时——换句话说,python有闭包。
它定义了一个名为adder的函数。当被叫来争论时
但是,尽管可以从外部函数读取值,但不能更改它(与许多其他语言不同)。例如,想象一下尝试实现累加器。你可以这样写代码:
很遗憾,尝试使用此代码会导致错误消息:
这是因为
|
|
3
1
在
在本例中,它是在两个分支上分配的,因此您可以看到,当您来打印它时,它肯定会被定义。
如果其中一个分支没有分配给
|
|
|
4
0
python不需要最初声明变量,因此可以在任意点声明和定义。是的,作用域是函数作用域,所以它在
|
|
|
5
0
我是个初学者,但据我所知,在python中不存在私有变量。看见 private variables 在python文档中进行详细讨论。 有用的信息也可以在同一页的“范围和名称空间”部分找到。 就我个人而言,我编写的代码与您每天发布的代码非常相似,特别是当条件依赖于从用户那里获取输入时,例如
在将变量用于结构化类型之前,我会先声明变量,例如,在将其项附加到循环中之前,我会声明一个空列表。 希望有帮助。 |