[Python]字典Dictionary、列表List、元組Tuple差異化理解


概述:Python中這三種形式的定義相近,易於混淆,應注意區分.

aDict={'a':1, 'b':2, 'c':3, 'd':4, 'e':5}
aList=[1,2,3,4,5]
aTuple=(1,2,3,4,5)

一、字典Dictionary

語法形式:aDict={'a':1, 'b':2, 'c':3, 'd':4, 'e':5}
Python手冊說明:https://docs.python.org/2.7/library/stdtypes.html#dict

  • Dictionary是Python內置數據類型,定義了"鍵-值"間的一一對應關系。
  • 每個元素都是key-value對,整個元素集合用大括號擴起來。
  • 可通過key獲取對應值,但不能根據value獲取key。
  • key不能相同,相同key則將覆蓋就值。
  • key大小寫敏感,value可支持任意數據類型(字符串、整數、對象或其他Dictionary)。
  • del可通過key刪除字典中特定元素del dict[k]
  • clear將清空字典中所有元素,空的大括號表示沒有元素的字典。

二、列表List

語法形式:aList=[1,2,3,4,5]

  • List中元素是可變的。
  • List是使用中括號括起來的有序元素集合。
  • List列表索引從0開始。
  • 負數索引表示從List的尾部開始向前存取元素,list[-1]表示最后一個元素,可以理解list[-n]=list[len(list)-n]
  • List[m:n]表示List中m<=k<n的子集,被稱為slice,詳見手冊
  • List[:]返回與List中元素相同的一個新list,List[1:]取1-len(List)中所有元素
  • List列表方法:insert()插入新的元素,append()在尾部追加新元素、列表,extend()將一個列表擴展到原列表中,index()返回首個出現的元素索引,k in list返回是否存在
  • List可通過+連接兩個列表,等價於list.extend(anotherList)。
  • List中元素可以相同

三、元組Tuple

語法形式:aTuple=(1,2,3,4,5)

  • Tuple元組是不可變的List,不能改變元組中的元素值。
  • 創建Tuple的形式與List相同,區別在於將[]換為()。
  • Tuple元組沒有append、extend、remove、pop、index等方法,但可使用in判斷元素是否存在。
  • 空元組可以用()表示,但只有一個元素的元組為避免歧義應當使用(n,)表示,而避免只用(n)的形式,Python可能誤解為加了小括號的數字n。
  • 列表和元組的相互轉化:atuple=tuple(alist)alist=list(atuple)
  • 無關閉分隔符:任何以逗號分隔的無符號對象都認為是元組,如x,y = 1,2print "Value of x,y:", x, y
  • Tuple好處:速度比List快,代碼安全。

Python元組包含了以下內置函數:

1、cmp(tuple1, tuple2):比較兩個元組元素。
2、len(tuple):計算元組元素個數。
3、max(tuple):返回元組中元素最大值。
4、min(tuple):返回元組中元素最小值。
5、tuple(seq):將列表轉換為元組。

參考文獻

  1. Python list、tuple、dict區別
  2. Python中的List,Tuple和Dictionary
  3. Python 元組(Tuple)操作詳解
  4. Python tuple 元組詳解


免責聲明!

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



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