1. 程式人生 > >Python筆記——基本資料結構:列表、元組及字典

Python筆記——基本資料結構:列表、元組及字典

一、列表

一組有序專案的集合。可變的資料型別【可進行增刪改查】

列表是以方括號“[]”包圍的資料集合,不同成員以“,”分隔。

列表中可以包含任何資料型別,也可包含另一個列表

列表可通過序號訪問其中成員

常用列表操作:

list.append()追加成員,成員資料

list.pop()刪除成員,刪除第i個成員

list.count(x)計算列表中引數x出現的次數

list.remove()刪除列表中的成員,直接刪除成員i

list.extend(L)向列表中追加另一個列表L

list.reverse()將列表中成員的順序顛倒

list.index(x)獲得引數x在列表中的位置

list.sort()將列表中的成員排序

list.insert()向列表中插入資料insert(a,b)向列表中插入資料

可通過

>>>help(list) 檢視方法詳情

[python] view plaincopyprint?
  1. print("-------list operations------")  
  2. #列表操作  
  3. l = [1,2,3,4,5]  
  4. l2 = [7,8,9]  
  5. print(l)  
  6. #獲得列表長度  
  7. length = len(l)  
  8. print(length)  
  9. #追加一個元素,在列表最後一位  
  10. l.append(6)  
  11. print(l)  
  12. #向列表中追加另一個列表  
  13. l.extend(l2)  
  14. print(l)  
  15. #插入一個元素,在位置a  
  16. l.insert(0,0)  
  17. print(l)  
  18. #將列表順序顛倒  
  19. l.reverse()  
  20. print(l)  
  21. #排序,從小到大  
  22. l.sort()  
  23. print(l)  
  24. #統計某個元素出現的次數  
  25. c = l.count(0)  
  26. print(c)  
  27. #查詢某個引數在列表中的位置,未命中則拋異常  
  28. i = l.index(1)  
  29. print(i)  
  30. #刪除某個位置的成員  
  31. l.pop(0)  
  32. print(l)  
  33. l.append(1)  
  34. #直接刪除某個值的成員,若有多個,刪除第一個  
  35. l.remove(1)  
  36. print(l)  
  

結果:

列表補充:2011-4-17

[c-sharp] view plaincopyprint?
  1. #列表操作補充--切片操作  
  2. example = [0,1,2,3,4,5,6,7,8,9]  
  3. #列印某一區間 左閉右開  
  4. print(example[4:8])  
  5. #想包含最後一個  
  6. print(example[4:])  
  7. #包含首個  
  8. print(example[:8])  
  9. #所有的  
  10. print(example[:])  
  11. #第三個引數為步長  
  12. print(example[1:8:2])  
  13. #倒序輸出  
  14. print(example[::-1])  
  15. #列表合併  
  16. a = [1,2,3]  
  17. b = [4,5,6]  
  18. print(a+b)  
  19. #替換  
  20. ex = [1,2,3,4,5,6]  
  21. ex[4:]=[9,8,7]  
  22. print(ex)#將56換為987  
  23. #插入  
  24. ex[1:1] = [0,0,0]  
  25. print(ex)  
  26. #刪除  
  27. del ex[0:2]  
  28. print(ex)  
  29. #或者  
  30. ex[6:]=[]  
  31. print(ex)  
  32. #比較  
  33. one = [1,2,3]  
  34. two = [1,2,3]  
  35. print(one == two)#true  
  36. print(one is two)#false  
  37. #列表操作補充——字串也是列表  
  38. str = "abcdefg"  
  39. print(str[0])  
  40. #將一個字串轉為字元陣列  
  41. print(list(str))  
  42. #字串  
  43. s = "abcdefg"  
  44. #判斷是否包含  
  45. print('a' in s)  
  46. #函式和模組  
  47. import math  
  48. #將一個變數指向一個函式  
  49. se = math.sqrt  
  50. print(se(81))  

 結果:

二、元組

不可變序列

元組是以圓括號“()”包圍的資料集合,不同成員以“,”分隔

與列表不同:元組中資料一旦確立就不能改變

通過下標進行訪問

宣告:

L=(1,2,3)

含0個元素的元組: L = ()

含1個元素的元組:L=(1,) 注意有逗號

[python] view plaincopyprint?
  1. #元組操作  
  2. #宣告  
  3. o =('a','b','c',('d1','d2'))  
  4. o1 = ()  
  5. o2 = (1,)  
  6. #訪問  
  7. print(o[0])  
  8. print(o[3][0])  
  9. #用於列印語句  
  10. age = 22  
  11. name = 'tom'  
  12. print("%s is %d years old"%(name,age))  

 

三、字典

鍵值對的集合(map)

字典是以大括號“{}”包圍的資料集合

與列表區別:字典是無序的,在字典中通過鍵來訪問成員。

字典是可變的,可以包含任何其他型別

宣告:

M={k1:v1,k2:v2}

訪問 M[k1]將得到v1

常用字典操作:

dic.clear()清空字典

dic.keys()獲得鍵的列表

dic.values()獲得值的列表

dic.copy()複製字典

dic.pop(k)刪除鍵k

dic.get(k)獲得鍵k的值

dic.update()更新成員,若成員不存在,相當於加入

dic.items()獲得由鍵和值組成的列表

dic.popitem

可以通過

>>>help(dict) 檢視詳情

[python] view plaincopyprint?
  1. #字典操作  
  2. m = {'a':1,'b':2,'c':3}  
  3. print(m)  
  4. #讀取某一個_通過key  
  5. print(m['a'])  
  6. #讀取某一個,通過get方法  
  7. print(m.get('b'))  
  8. #複製字典  
  9. m2 = m.copy()  
  10. print(m2)  
  11. #獲取所有鍵的列表  
  12. print( m.keys() )  
  13. #獲取所有值的列表  
  14. print( m.values() )  
  15. #獲取所有鍵值對元組組成的列表  
  16. print( m.items() )  
  17. #更新成員,當對應鍵值不存在時,相當於加入  
  18. m.update({'d':4})  
  19. print(m)  
  20. #刪除某個成員  
  21. m.pop('a')  
  22. print(m)