!!Python字典增刪操作技巧簡述+Python字典嵌套字典與排序


http://developer.51cto.com/art/201003/186006.htm

Python編程語言是一款比較容易學習的計算機通用型語言。對於初學者來說,首先需要掌握的就是其中的一些基礎應用。比如今天我們為大家介紹的Python字典的相關操作,就是我們在學習過程中需要熟練掌握的技巧。

Python字典(Dictionary)是一種映射結構的數據類型,由無序的“鍵-值對”組成。字典的鍵必須是不可改變的類型,如:字符串,數字,tuple;值可以為任何Python數據類型。

1、新建Python字典

  1. >>> dict1={} #建立一個空字典  
  2. >>> type(dict1)  
  3. < type 'dict'> 

2、增加Python字典元素:兩種方法

  1. >>> dict1['a']=1 #第一種  
  2. >>> dict1  
  3. {'a': 1}  
  4. #第二種:setdefault方法  
  5. >>> dict1.setdefault('b',2)  
  6. 2  
  7. >>> dict1  
  8. {'a': 1, 'b': 2} 

3、刪除Python字典

  1. #刪除指定鍵-值對  
  2. >>> dict1  
  3. {'a': 1, 'b': 2}  
  4. >>> del dict1['a'] #也可以用pop方法,dict1.pop('a')  
  5. >>> dict1  
  6. {'b': 2}  
  7. #清空字典  
  8. >>> dict1.clear()  
  9. >>> dict1 #字典變為空了  
  10. {}  
  11. #刪除字典對象  
  12. >>> del dict1  
  13. >>> dict1  
  14. Traceback (most recent call last):  
  15. File "< interactive input>", line 1, in < module> 
  16. NameError: name 'dict1' is not defined 

4)對字典的遍歷

python 代碼
>>> table = {'abc':1, 'def':2, 'ghi':3}  
>>> for key in table.keys():  
    print key, '/t', table[key]  
 
      
abc     1  
ghi     3  
def     2 

 

Python字典嵌套字典與排序 

http://muilpin.blog.163.com/blog/static/16538293620113112549775/

背景:計算圖形中任意點與點的曼哈頓距離:
x=[1,2,3,4,5,6,7,8,9,2]
y=[2,3,2,5,6,7,2,3,5,5]
n=10
distance=[[0 for j in range(n)]for i in range(n)]

定義二層嵌套字典與二維數組:
result={}
for i in range(n):
    result[str(i)]={}  #定義嵌套字典
另外定義二維數組與字典方式不一樣:
n=16
distance=[[0 for j in range(n)]for i in range(n)]

給字典賦值:
for i in range(n):
    for j in range(n):
        distance[i][j]=abs(x[i]-y[j])  #計算曼哈頓距離
        result[str(i)][str(j)]=distance[i][j]

字典按照值(values)排序:
result_sort[i]=[(k,v) for (k,v) in result[str(i)].iteritems()]   #將嵌套中第二維字典的轉變成列表
使用列表排序函數sorted()排序:
result_sort[i]=sorted(result_sort[i],key=lambda x:x[1],reverse=False)

Python多維/嵌套字典數據無限遍歷

http://www.cnblogs.com/lhj588/archive/2012/05/24/2516046.html


免責聲明!

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



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