之前在使用字典時遇到乙個問題,我想利用迴圈的方式將一些字典元素放進乙個字典中
**大概是這樣的
temdic =
datadic =
for i in
range(0
,10):
***x#這裡對temdic進行賦值(當然每次賦的值是不同的)
datadic[i]
= temdic
datadic.clear(
)
這樣寫了之後發現字典中所有元素都和最後一次datadic[i] = temdic
賦值的元素相同。
將這段**改為
temdic =
datadic =
for i in
range(0
,10):
***x#這裡對temdic進行賦值
datadic[i]
= temdic.copy(
) datadic.clear(
)
問題就解決了
在網上找了很久後發現有乙個博主遇到了乙個相似的問題python:往列表中新增字典時碰到的問題
推測我遇到的問題和他在像字典裡新增列表時遇到的問題相似,也是字典用datadic[i] = temdic這樣的方式儲存是沒有將字典的元素都複製過來,而是對應到了temdic的記憶體位址,導致datadic中的所有鍵對應的值都對應到了乙個記憶體位址。
python字典len d Python字典詳解
python字典 dict 是乙個很常用的復合型別,其它常用符合型別有 陣列 array 元組 touple 和集合 set 字典是乙個key value的集合,key可以是任意可被雜湊 內部key被hash後作為索引 的型別。因此,key可以是文字 數字等任意型別。如果兩個數字 判斷相等,那麼ke...
python字典換行輸出 Python字典如何換行
python字典如何換行 python字典換行的方法如下 1 換行時保證行尾是逗號即可a key2 val2 key3 val3 key4 val4 key5 val5 注意這種情況下,每一行第乙個非空白字元都要和第一行的括號後的字元對齊,並且最後的括號是不換行 直接跟在最後乙個元素後面 的。3 另...
python實現字典排序 python 字典排序
引子 字典,形如 dic 字典中的元素沒有順序,所以dic 0 是有語法錯誤的。並且不可以有重複的鍵值,所以 dic.add c 4後,字典變成 待解決問題 如何根據需要可以根據 鍵 或 鍵值 進行不同順序的排序?函式原型 sorted dic,value,reverse dic為比較函式,valu...