在Python 字典中一鍵對(duì)應(yīng)多個(gè)值的實(shí)例
如下所示:
#encoding=utf-8 print '中國(guó)' #字典的一鍵多值 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é)果:
中國(guó)
方案一 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í)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python 利用百度API進(jìn)行淘寶評(píng)論關(guān)鍵詞提取
這篇文章主要介紹了python 利用百度API進(jìn)行淘寶評(píng)論關(guān)鍵詞提取,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下2021-03-03在Python中使用MySQL--PyMySQL的基本使用方法
PyMySQL 是在 Python3.x 版本中用于連接 MySQL 服務(wù)器的一個(gè)庫(kù),Python2中則使用mysqldb。這篇文章主要介紹了在Python中使用MySQL--PyMySQL的基本使用,需要的朋友可以參考下2019-11-11Python+numpy實(shí)現(xiàn)一個(gè)蜘蛛紙牌游戲
蜘蛛紙牌大家玩過(guò)沒有?之前的電腦上自帶的游戲,用他來(lái)摸魚過(guò)的舉個(gè)手。但是現(xiàn)在的電腦上已經(jīng)沒有蜘蛛紙牌了。所以本文就來(lái)用Python做一個(gè)吧,需要的可以參考一下2022-12-12100 個(gè) Python 小例子(練習(xí)題二)
這篇文章主要繼續(xù)上一篇文章100 個(gè) Python 小例子(練習(xí)題一)來(lái)完成100 個(gè) Python 小例子,本文包括字母識(shí)詞、反向輸出II、表轉(zhuǎn)字符串、設(shè)置輸出顏色、算素?cái)?shù)等例子,需要的朋友可以參考一下2021-10-10Python編程實(shí)現(xiàn)輸入某年某月某日計(jì)算出這一天是該年第幾天的方法
這篇文章主要介紹了Python編程實(shí)現(xiàn)輸入某年某月某日計(jì)算出這一天是該年第幾天的方法,涉及Python針對(duì)日期時(shí)間的轉(zhuǎn)換與運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2017-04-04Python機(jī)器學(xué)習(xí)NLP自然語(yǔ)言處理基本操作之京東評(píng)論分類
自然語(yǔ)言處理( Natural Language Processing, NLP)是計(jì)算機(jī)科學(xué)領(lǐng)域與人工智能領(lǐng)域中的一個(gè)重要方向。它研究能實(shí)現(xiàn)人與計(jì)算機(jī)之間用自然語(yǔ)言進(jìn)行有效通信的各種理論和方法2021-10-10Python設(shè)計(jì)模式之代理模式簡(jiǎn)單示例
這篇文章主要介紹了Python設(shè)計(jì)模式之代理模式,簡(jiǎn)單說(shuō)明了代理模式的概念、原理,并結(jié)合Python實(shí)例形式分析了代理模式的相關(guān)定義與使用技巧,需要的朋友可以參考下2018-01-01Python實(shí)現(xiàn)Tracert追蹤TTL值的方法詳解
Tracert命令跟蹤路由原理是IP路由每經(jīng)過(guò)一個(gè)路由節(jié)點(diǎn)TTL值會(huì)減一。本文我們將通過(guò)scapy構(gòu)造一個(gè)路由追蹤工具并實(shí)現(xiàn)一次追蹤,感興趣的小伙伴可以了解一下2022-10-10