Python問題解決,重複向列表中添加字典作爲元素

Python問題解決(一),重複向列表中添加字典作爲元素

Python基礎知識詳解(十)小結,用python實現教師信息管理系統

上篇用python實現教師信息管理系統,這裏學幾個實現這個系統過程中遇到的問題

向一個列表中添加字典作爲元素時錯誤

描述

利用一個字典爲過渡重複向一個列表中添加字典作爲元素時,列表中每個元素都是最後添加的那個值,而不是按順序輸入的字典
源碼片段:完整代碼請查看開頭的博客鏈接


def luru ():                                #錄入信息
    i = int (input('請輸入需要輸入的人數:'))
    for i in range(i) :
        print('\n開始錄入第%d位教師信息\n\n'%(int(len(xinxi))+1))
        xinxi1['教師號'] = input('請輸入教師號:')
        xinxi1['姓名'] = input('請輸入姓名:')
        xinxi1['性別'] = input('請輸入性別:')
        xinxi1['年齡'] = input('請輸入年齡:')
        xinxi1['電話'] = input('請輸入電話:')
        xinxi1['工資'] = input('請輸入工資:')
        xinxi1['職稱'] = input('請輸入職稱:')
        xinxi1['課程名稱'] = input('請輸入3課程名稱:')
        xinxi1['班級數'] = input('請輸入班級數:')
        xinxi.append(xinxi1)   
    else :
        print ('輸入結束')

解決

問題是python中是名字像標籤一樣貼在變量上xinxi.append(xinxi1),是把變量放入列表會隨着xinxi1修改而變,所以用dict轉化一下,這樣錄入列表的信息就不會隨xinxi1而改變
將上面代碼片段的

xinxi.append(xinxi1)

修改爲

xinxi.append(dict(xinxi1))

這是我自己的理解有錯誤還請批評指教

最後

持續更新arduino 樹莓派 python 等等
接到有幫助的話 求點贊👍 求關注❤️ 求分享👥
有問題可以評論
點關注,不迷路
如果有任何錯誤,如何建議,請批評指教,不勝感激 !

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