# -*- coding: cp936 -*- #python 27 #xiaodeng #作用域 #概念: #简单理解就是一个变量的命名空间(所在位置)。 #代码中变量被赋值的位置,决定了哪些范围的对象可以访问这个变量,这个范围就是命名空间 #作用域法则: #1)全局作用域的作用范围仅限于单个文件。 这里的全局仅仅是说在一个文件的顶层的变量名对于这个文件内部的代码而言是全局的。 变量名由模块文件隔开,导入模块文件之后才能使用这个文件中定义的变量名 eg: #test.py name='xiaodeng' version='2.5' #导入 import test print test.name 当你在python中听到全局时,就应该条件反射的想到模块 #2)每次对函数的调用都创建了一个新的本地作用域 #3)赋值的变量名除非声明为全局变量或非本地变量,否则均为本地变量(局部变量) 在函数内部定义一个位于模块文件顶层的变量名,需要用global声明 #4)所有其他的变量名都可以归纳为本地,全局或内置