2015-06-08 43 views

回答

0

使用global。這裏有一個例子:

lst = [2,3] 
def function1(): 
    global lst # Guide lst to the global list that is already available 
    print('lst = {}'.format(lst)) 
    lst = ['12','10'] 

print('lst = {}'.format(lst)) 
function1() 
print('lst = {}'.format(lst)) 

您將看到以下的輸出:

lst = [2, 3] 
lst = [2, 3] 
lst = ['12', '10'] 
-1

檢查第一個例子。

global lst 
lst=[] 
def function1(): 

    lst.append(6) 
    print(lst) 

def function2(): 
    lst.append(7) 
    print(lst) 

function1() 
function2() 

輸出: -

C:\Python34\python.exe "C:/Users/akthakur/PycharmProjects/Learning python/testing.py" 
[6] 
[6, 7] 

這裏LST被聲明爲全局和在功能1被使用並且在功能2中使用時,使用相同的LST所以輸出。

第二示例

global lst 
lst=[] 
def function1(): 
    lst=[7,8] 
    lst.append(6) 
    print(lst) 

def function2(): 
    lst.append(7) 
    print(lst) 

function1() 
function2() 

輸出與您在功能1 LST定義現在

C:\Python34\python.exe "C:/Users/akthakur/PycharmProjects/Learning python/testing.py" 
[7, 8, 6] 
[7] 

= [7,8]所以這創造了一個新的本地列表和LST在function1同樣被使用(本地版本),而在函數2中,當你再次調用lst時,它的全局版本被調用。[這就是你在做的事情。]

然後聲明新的本地列表爲lst = ['12','10'],將您的值附加到在函數外定義的現有列表中,並聲明與全局相同。

相關問題