1. 程式人生 > >少說話多寫程式碼之Python學習018——字典的方法(popitem、setdefault)

少說話多寫程式碼之Python學習018——字典的方法(popitem、setdefault)

popitem方法
popitem其實和pop方法沒什麼兩樣,雖然解釋說pop是彈出字典的最後一項,popitem彈出的是字典的隨機項。但是字典是一個連結串列結構,哪裡有最後一項和第一項呢?不管怎麼說,我們可以看看popitem的用法。

#popitem
d={}
d={'詩仙':'李白','詩聖':'杜甫','詩王':'白居易'}
print(d)
print(d.popitem())
print(d)
print(d.popitem())
print(d)
print(d.popitem())
print(d)

輸出
 

{'詩仙': '李白', '詩聖': '杜甫', '詩王': '白居易'}
('詩王', '白居易')
{'詩仙': '李白', '詩聖': '杜甫'}
('詩聖', '杜甫')
{'詩仙': '李白'}
('詩仙', '李白')

setdefault方法
setdefalt類似get方法,能夠獲得與給定鍵的對應值,此外,setdefault還能在字典中不含有給定鍵的情況下設定響應的鍵值。
例如

#setdefault
s={}
s.setdefault('陸遜','無技能')
print(s['陸遜'])
s['陸遜']='順手牽羊'
print(s)
print(s['陸遜'])
s.setdefault('陸遜','無技能')
print(s)
print(s['陸遜'])

輸出

{}
無技能
{'陸遜': '順手牽羊'}
順手牽羊
{'陸遜': '順手牽羊'}
順手牽羊

上述程式碼中,當鍵不存在時,setdefault返回預設值並且相應的更新字典。如果鍵存在,那麼就返回與其對應的值,但不改變字典。可以設定預設值,如果不設定,預設使用none。比如,
 

e={}
e.setdefault('趙雲')
print(e)
print(e['趙雲'])


輸出

{'趙雲': None}
None

工程程式碼下載:https://download.csdn.net/download/yysyangyangyangshan/10703887