Python 字典中一鍵對應多個值


#字典的一鍵多值 
   
print'方案一 list作為dict的值 值允許重復'   
   
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 '方案一 刪除值,會留下一個空列表' 
d1[key].remove(value) 
d1[key].remove(value) 
print d1  
   
print '方案一 檢查是否還有一個值' 
print d1.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 
   
print d1 
   
print '方案二 獲取值' 
print list(d1[key]) 
   
print '方案二 刪除值,會留下一個空列表' 
del d1[key][keyin] 
keyin=2 
del d1[key][keyin] 
print d1 
   
print '方案二 檢查是否還有一個值' 
print d1.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) 
   
print d1 
   
print '方案三 獲取值' 
print list(d1[key]) 
   
print '方案三 刪除值,會留下一個空列表' 
d1[key].remove(value) 
value=2 
d1[key].remove(value) 
print d1  
   
print '方案三 檢查是否還有一個值' 
print d1.get(key,()) 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM