天天看點

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