About function inside another function in Python
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
Python variable scope question
Python nested function scopes
我对下面的代码感到困惑
1 2 3 4 5 6 7 8 9 | def func(): a=10 def func2(): print a a=20 func2() print a func() |
在python 2.7中,当运行上述代码时,python会给出错误,
但是,如果我在
1 2 3 4 5 6 7 8 9 | def func(): a=10 def func2(): print a func2() print a func() |
为什么?因为在其他语言中,如C/C++
1 2 3 4 5 6 7 8 | { a=10 { cout<<a<<endl //will give 10 a=20 //here is another a cout<<a<<endl //here will give 20 } } |
局部变量和外部变量可以很清楚地分辨出来。
通过添加行
如果没有这一行,python将使用