变量名分为三个作用域进行查找:首先是本地,之后是函数内,之后是全局,最后是内置
在默认的情况下,变量名赋值会创建或者改变本地变量
当函数中使用未认证的变量名时,Python就会搜索4个作用域(本地作用域,之后是上一层结 构中def或lambda的本地作用域,之后是全局作用域,最后是内置作用域,
但函数中给一个变量名赋值时,Python总是创建或者改变本地作用域的变量名,除非它已经在那个函数中声明为 全局变量
当在函数之外给一个变量名赋值时(也就是一个模块文件的顶层)本地作用域与全局作用域是相同的
原文地址:http://blog.csdn.net/u012829152/article/details/41868565