Python 字典中一鍵對應多個值

2021-07-31 10:36:01 字數 3548 閱讀 8362

python 字典中一鍵對應多個值

#encoding=utf-8

print'中國'

#字典的一鍵多值

print'方案一 list作為dict的值 值允許重複'

d1={}

key=1

value=2

value=2

printd1

#獲取值

print'方案一 獲取值'

printlist(d1[key])

print'方案一 刪除值,會留下乙個空列表'

d1[key].remove(value)

d1[key].remove(value)

printd1

print'方案一 檢查是否還有乙個值'

printd1.get(key,)

print'方案二 使用子字典作為dict的值 值不允許重複'

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

printd1

print'方案二 獲取值'

printlist(d1[key])

print'方案二 刪除值,會留下乙個空列表'

deld1[key][keyin]

keyin=2

deld1[key][keyin]

printd1

print'方案二 檢查是否還有乙個值'

printd1.get(key,())

print'方案三 使用set作為dict的值 值不允許重複'

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)

printd1

print'方案三 獲取值'

printlist(d1[key])

print'方案三 刪除值,會留下乙個空列表'

d1[key].remove(value)

value=2

d1[key].remove(value)

printd1

print'方案三 檢查是否還有乙個值'

printd1.get(key,())

列印結果:

中國方案一 list作為dict的值 值允許重複

獲取值[2, 2]

刪除值,會留下乙個空列表

檢查是否還有乙個值

方案二 使用子字典作為dict的值 值不允許重複

}獲取值

[2, 3]

刪除值,會留下乙個空列表

}檢查是否還有乙個值

{}方案三 使用set作為dict的值 值不允許重複

獲取值[2, 3]

刪除值,會留下乙個空列表

檢查是否還有乙個值

set()

Python 字典中一鍵對應多個值

encoding utf 8 print 中國 字典的一鍵多值 print 方案一 list作為dict的值 值允許重複 d1 key 1 value 2 value 2 print d1 獲取值 print 方案一 獲取值 print list d1 key print 方案一 刪除值,會留下乙個...

Python 字典的一鍵多值,即乙個鍵對應多個值

encoding utf 8 print 中國 字典的一鍵多值 print 方案一 list作為dict的值 值允許重複 d1 key 1 value 2 value 2 print d1 獲取值 print 方案一 獲取值 print list d1 key print 方案一 刪除值,會留下乙個...

python 字典的一鍵多值

今天在寫乙個小 的時候要用到這樣的資料結構 乙個由dict 組成的list列表。可是,如何實現呢?查閱了 python cookbook 有以下三種方式 1.d1 2.d2 d2.setdefualt key,value 1 使用字典作為dict的值,自然而然的消滅了重複值的可能 3.d3 d3.s...