Python中的list、tuple、dict和set總結

其他關于Python的總結文章請訪問:http://www.itdecent.cn/nb/47435944

Python中的list、tuple、dict和set

List

list是一種有序集合,可以隨時添加或者刪除其中的元素,使用中括號中的逗號隔開的元素表示,list中的元素數(shù)據(jù)類型可以不同,甚至是另外一個list

  • 使用 ListName 后跟 [n] 的索引訪問,索引從0開始表示第一個元素,-1表示倒數(shù)第一個元素,-2表示導數(shù)第二個元素
  • len(listName) 返回list中的元素個數(shù)
  • listName.append(newElement) 向list中新增元素到list的末尾
  • listName.insert(n,newElement) 向list中新增元素到list的第n-1位,即n所在索引處
  • listName.pop(n) 從list中刪除索引為n的元素并返回,傳入空參數(shù)則刪除list末尾元素

Tuple

tuple是不可變的list,一經(jīng)初始化不能再改變,只能訪問,使用小括號中的逗號隔開的元素表示

  • 定義空tuple可以寫成 t=()
  • 定義包含1個元素的tuple需要寫成 t=(elememt,),從而和單獨的element分開

Dict

字典,全稱dictionary,同其他語言中的map,是鍵值對的形式存儲信息的。使用大括號中的逗號隔開的鍵值對表示,鍵值對寫成 'key':value 的形式,key是不能重復的。

  • 使用dictName['key']訪問該鍵對應的值
  • 使用dictName['key']=value的方式為鍵為key的位置賦值,如果沒有該鍵就新增鍵值對
  • 使用 'key' in dictName 判斷 key 是否在dictName
  • 使用 get() 方法判斷
    • dictName.get('key') 如果有key則返回該值,否則返回None
    • dictName.get('key',givenValue) 如果有key則返回該值,否則返回givenValue
  • 使用 dictName.pop('key') 刪除key與去對應的值

Dict與List的比較

  • Dict的特點
    • 查找和插入的速度極快,不會隨著key的增加而變慢
    • 需要占用大量的內(nèi)存,內(nèi)存浪費多
  • List的特點
    • 查找和插入的時間隨著元素的增加而增加
    • 占用空間小,浪費內(nèi)存很少

Dict是用空間來換取時間的一種方法,基于哈希算法

Set

set存放的是一組不重復無序元素,創(chuàng)建set時需要傳入一個list,set會自動過濾list中的重復元素

s=set([1,2,2,3,3,3]) 
# s={1,2,3} 
  • 使用setName.add(element),可以增添新的元素
  • 使用setName.remove(element),可以刪除該元素

set可以看成數(shù)學意義上的無序無重復元素的集合,因此可以做交集 & 、并集 | 等運算

s1=set([1,2,3]) 
s2=set([2,3,4]) 
s1 & s2 
# {2,3} 
s1 | s2 
# {1,2,3,4} 
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容