【发布时间】:2020-08-07 13:38:14
【问题描述】:
我编写了一个 Python 代码,其中没有参数的函数可以访问在其范围之外声明的变量。我想知道 Python 解释器如何访问这个变量而不会像其他编程语言(例如 JAVA)一样给出任何错误。
# Code 1:
def A():
# count accessed inside function
print(count)
# count declared outside function A
count = 23
A()
代码 1 的输出: 23
还有一个额外的问题。在 Python 中,如果我们在循环内声明任何变量,那么它如何在循环外使用。因为,正如我们所知,任何变量的范围都将保留在定义它的块之下。
# Code 2:
for i in range(1):
# num declared inside for loop block
num = 23
# num can be accessed outside for loop block.
print(num)
代码 2 的输出: 23
【问题讨论】:
标签: python-3.x function loops