chong0918 发表于 2020-8-11 21:04:18

内部函数的局部变量会影响全局变量的结果吗?


举例:get_digits(12345) ==>

小甲鱼课后答案:
result = []
def get_digits(n):
      if n > 0:
                result.insert(0, n%10)
                get_digits(n//10)

get_digits(12345)
print(result)

请问就上边那道题小甲鱼给的答案,result定义的不是全局变量吗?那函数会将全局变量result屏蔽,最后内部函数的变量不是不会影响全局变量的结果吗,为什么最后result的输出不是空列表呢?

zltzlt 发表于 2020-8-11 21:05:40

https://fishc.com.cn/thread-159034-1-1.html

chong0918 发表于 2020-8-11 21:08:25

zltzlt 发表于 2020-8-11 21:05
https://fishc.com.cn/thread-159034-1-1.html

明白了,谢谢

lin129888 发表于 2020-8-11 21:10:54

{:10_249:} ilovefishc.com ilovefishc.com
页: [1]
查看完整版本: 内部函数的局部变量会影响全局变量的结果吗?