python 動態變量創建locals()

通過以下程序可以動態創建局部變量

names = locals()

for i in range(3):

    names['n' + str(i) ] = i

    #創建後直接調用變量名沒問題

    print(n0, n1, n2)

但是,使用中發現,如果動態創建的變量實在函數中創建的且最後需要被return 返回,則如下寫法就不行,會提示沒有定義n0等。

def():

    names = locals()

    for i in range(3):

        names['n' + str(i) ] = i

    #創建後直接調用變量名沒問題

    return  n0,n1,n2

對於這種情況,上述的return 應該改寫爲

    return names['n0'],names['n1'],names['n2']

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章