溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

在Python 字典中一鍵對(duì)應(yīng)多個(gè)值的實(shí)例

發(fā)布時(shí)間:2020-09-27 06:20:09 來源:腳本之家 閱讀:181 作者:suibianshen2012 欄目:開發(fā)技術(shù)

如下所示:

#encoding=utf-8
 
print '中國'
 
#字典的一鍵多值
 
print'方案一 list作為dict的值 值允許重復(fù)'
 
d1={}
key=1
value=2
d1.setdefault(key,[]).append(value)
value=2
d1.setdefault(key,[]).append(value)
 
print d1
 
#獲取值
print '方案一 獲取值'
print list(d1[key])
 
print '方案一 刪除值,會(huì)留下一個(gè)空列表'
d1[key].remove(value)
d1[key].remove(value)
print d1
 
print '方案一 檢查是否還有一個(gè)值'
print d1.get(key,[])
 
print '方案二 使用子字典作為dict的值 值不允許重復(fù)'
 
d1={}
key=1
keyin=2
value=11
d1.setdefault(key,{})[keyin]=value
keyin=2
value=22
d1.setdefault(key,{})[keyin]=value
keyin=3
value=33
d1.setdefault(key,{})[keyin]=value
 
print d1
 
print '方案二 獲取值'
print list(d1[key])
 
print '方案二 刪除值,會(huì)留下一個(gè)空列表'
del d1[key][keyin]
keyin=2
del d1[key][keyin]
print d1
 
print '方案二 檢查是否還有一個(gè)值'
print d1.get(key,())
 
print '方案三 使用set作為dict的值 值不允許重復(fù)'
d1={}
key=1
value=2
d1.setdefault(key,set()).add(value)
value=2
d1.setdefault(key,set()).add(value)
value=3
d1.setdefault(key,set()).add(value)
 
print d1
 
print '方案三 獲取值'
print list(d1[key])
 
print '方案三 刪除值,會(huì)留下一個(gè)空列表'
d1[key].remove(value)
value=2
d1[key].remove(value)
print d1
 
print '方案三 檢查是否還有一個(gè)值'
print d1.get(key,())

打印結(jié)果:

中國

方案一 list作為dict的值 值允許重復(fù)

{1: [2, 2]}
獲取值
[2, 2]
刪除值,會(huì)留下一個(gè)空列表
{1: []}
檢查是否還有一個(gè)值
[]

方案二 使用子字典作為dict的值 值不允許重復(fù)

{1: {2: 22, 3: 33}}
獲取值
[2, 3]
刪除值,會(huì)留下一個(gè)空列表
{1: {}}
檢查是否還有一個(gè)值
{}

方案三 使用set作為dict的值 值不允許重復(fù)

{1: set([2, 3])}
獲取值
[2, 3]
刪除值,會(huì)留下一個(gè)空列表
{1: set([])}
檢查是否還有一個(gè)值
set([])

以上這篇在Python 字典中一鍵對(duì)應(yīng)多個(gè)值的實(shí)例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持億速云。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI