天天看点

python day16(20170323 )

1.全部变量的调用,在方法体外进行变量的定义,在方法体内进行变量内容的输出,示例代码如下:

#!/usr/bin/python
x = 100
def func():
    print x
func()
           

2.局部变量的调用,在方法体内进行变量的定义,在方法体内进行变量内容的输出,并调用该方法,示例代买如下:

#!/usr/bin/python
def func():
    x = 100
    print x
func()
           

3.全局变量声明后,在方法中引用完成,在方法外打印该变量,变量能够正确的进行打印,示例代码如下:

#!/usr/bin/python
x = 100
def func():
    print x
func()
print x
           

4.在方法内进行变量的声明,方法体外进行变量的打印,将报错,示例代码如下。报错信息:NameError: name 'x' is not defined

#!/usr/bin/python
def func():
    x = 100
    print x
func()
print #*20
print x
           

5.说明,函数体外定义的变量为全局变量,可以在函数体外和函数体内使用,函数体内定义的变量,只能在函数体内使用。

6.当函数体中定义的变量名同全局变量的名称时,函数体内调用的是局部变量的数据内容,函数体外使用的是全局变量的数据值,示例代码如下。

#!/usr/bin/python
x="global var"
def func():
    x = 100
    print x
func()
print x
           

7.如果想调用函数体内的变量值,可以用global的方法进行定义,函数体外可以正确的引用该变量值,示例代码如下:

#!/usr/bin/python
x="global var"
def func():
    x = 100
    global y 
    y  = 123
    print x
func()
print y
print x
           

8.如果想调用函数体内的global变量,必须对函数进行调用,才能引用函数体内的变量值,否则将会报错(NameError: global name 'y' is not defined),示例代码如下:

#!/usr/bin/python
x="global var"
def func():
    x = 100
    global y 
    y  = 123
    print x
print y
print x
           

9.全局变量声明后,然后在函数体内重新对该全局变量进行赋值,调用该函数体后,全局变量的值会被重新赋值,函数体内重新调用该变量,变量值发生改变,示例代码如下:

#!/usr/bin/python
x="global var"
def func():
    global x
    x  = 123
func()
print x
           

10.多个函数中均声明global变量,并且变量同时对全局变量进行引用,会根据前后顺序对全局变量的数据值进行改变,示例代码如下:

#!/usr/bin/python
x="global var"
def func123():
    global x
    x  = 123
def func456():
    global x
    x = 456
func456()
print x
func123()
print x