set:
set 持有一系列元素,這一點和 list 很像,但是set的元素沒有重複,而且是無序的,這點和 dict 的 key很像。
建立:呼叫 set() 並傳入乙個 list,list的元素將作為set的元素:
>>> s = set(['a', 'b', 'c'])
set會自動去掉重複的元素。
訪問:由於set儲存的是無序集合,所以我們沒法通過索引來訪問。訪問set就是檢視set是否存在這個要訪問元素。
如:
>>> s = set(['adam', 'lisa', 'bart', 'paul'])
檢視bart是否在set中:
>>> 'bart' in s
true
特點:
1.set的內部結構和dict很像,唯一區別是不儲存value,因此,判斷乙個元素是否在set中速度很快。
2.set儲存的元素和dict的key類似,必須是不變物件,因此,任何可變物件是不能放入set中的。
3.set儲存的元素也是沒有順序的。
遍歷set:
s = set([('adam', 95), ('lisa', 85), ('bart', 59)])
for x in s:
print x[0]+':',x[1]
lisa: 85
adam: 95
bart: 59
由於set是無須的,所以列印的結果順序可能與list 的不同。更新set:
由於set儲存的是一組不重複的無序元素,因此,更新set主要做兩件事:1.是把新的元素新增到set中。
2.是把已有元素從set中刪除。
新增元素時,用set的add()方法:
>>> s = set([1, 2, 3])
>>> s.add(4)
>>> print s
set([1, 2, 3, 4])
新增已經存在的元素,不會報錯。
刪除set中的元素時,用set的remove()方法:
>>> s = set([1, 2, 3, 4])
>>> s.remove(4)
>>> print s
set([1, 2, 3])
刪除不存在的元素,會報錯。 python學習筆記(五)
python裡的流程控制語句 if expression statements s else statements s identationerror 縮排錯誤,縮排4個空格 true 非空的值 string,tuple,list,set,dict false 0,null,其他空值 需要多次判斷使...
python 學習筆記 (五)
遞迴函式,如果乙個函式在內部呼叫自身本身,這個函式就是遞迴函式。該包下的iterable方法是用來判斷物件是否可以迭代 from collections import iterable 遞迴算階乘 def fact n if n 1 return 1 return n fact n 1 print ...
Python學習筆記(五)
函式式程式設計 高階函式 把函式作為引數傳入,這樣的函式稱為高階函式,函式式程式設計就是指這種高度抽象的程式設計正規化。def xx a return a a def func a,b,c return c a c b print func 10,12,xx map 函式接收兩個引數,乙個是函式,乙...