簡體   English   中英

函數回調時覆蓋列表

[英]Overwrite list when function callback

這是我的代碼:

List = []

def a():
    for i in range(5):
        i = int(input('Input Number {}: '.format(i+1)))
        List.append(i)
    print('\nThanks for adding')
    return mainMenu()

def b():
    print('List value is {}'.format(List))
    return mainMenu()

在全球范圍內列出

那么如果我回到函數 def a(),如何覆蓋 len(5) 中的列表值?

如果你想在函數a改變/覆蓋你的List ,你可以這樣做:

def a():
    List[:] = []
    for i in range(5):
        i = int(input('Input Number {}: '.format(i+1)))
        List.append(i)
    print('\nThanks for adding')
    return mainMenu()

這樣,你將永遠有調用后a在變量只有最后5個輸入List

List = []

def a():
    global List 
    List = []
    for i in range(5):
        i = int(input('Input Number {}: '.format(i+1)))
        List.append(i)
    print('\nThanks for adding')
    return mainMenu()

def b():
    print('List value is {}'.format(List))
    return mainMenu()

請將 List 變量定義為全局變量並在 a() 函數中再次聲明空 List

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM