建立 set 的方式是呼叫 set() 並傳入乙個 list,list的元素將作為set的元素:
s = set(['adam', 'lisa', 'bart', 'paul'])
set不能包含重複的元素,所以,當我們傳入包含重複元素的 list ,set會自動去掉重複的元素。
s = set(['adam', 'lisa', 'lisa','bart', 'paul'])
print s
執行結果:
set(['adam', 'lisa', 'bart', 'paul'])
由於set是乙個無效列表,故無法像list一樣通過索引來訪問,訪問set其實也就是判斷 元素是否存在於 set中,故我們可以通過 in 操作來實現:
s = set(['adam', 'adam', 'lisa', 'lisa', 'bart', 'bart', 'paul', 'paul'])
print
'adam'
in s
print
'bart'
in s
① set 內部儲存與dict相似,但是不儲存value,故訪問速度快
②set的元素與dict類似,必須是不可變元素
③set儲存的元素也是沒有順序的。
months = set(['jan', 'feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov', 'dec'])
x1 = 'feb'
x2 = 'sun'
if x1 in months:
print
'x1: ok'
else:
print
'x1: error'
if x2 in months:
print
'x2: ok'
else:
print
'x2: error'
執行結果:
x1: ok
x2: error
使用for迴圈遍歷如下set
s = set([('adam', 95), ('lisa', 85), ('bart', 59)])
forx in s:
print
x[0], ":", x[1]
print ("%s:%d")%x
# 兩種print結果是一樣的
新增:add(),新增如果set中已有,則不會新增,set中沒有,才會新增
刪除:remove(),如果set中已該元素,則成功刪除,set中沒有,會報錯
s = set(['adam', 'lisa', 'paul'])
l = ['adam', 'lisa', 'bart', 'paul']
s.add('bart')
s.remove('adam')
s.remove('lisa')
print s
資料結構
建立元素
list
符號或list()建立
元素可變
tuple
()符號或tuple()建立
元素不可變
set{}符號或set()建立
元素不可重複
dict
{}符號或dict()建立
存放的鍵值對
del語句:可以刪除這些資料結構其中的元素也可以刪除變數。
java基礎(五) 集合
1.集合與陣列的區別 1 陣列不可變長度,集合可變長度 2 陣列裡可放基本資料型別和物件,集合只能放物件 2.集合框架頂層介面collection的共性方法 增 add object obj addall collection c 刪 clear remove object obj removeal...
任務五。集合的運算
printf 該兩集合是否相等 n xd a,b,x,y printf n printf 該兩個集合的並集結果如下 n bing a,b,x,y printf n printf 該兩個集合的交集結果如下 n jiao a,b,x,y printf n printf 該a b集合的相對補集結果如下 n...
PL SQL複習五 集合方法
1.exists 判斷某集合元素是否存在 declare type ename table type is table of emp.ename type ename table ename table type begin if ename table.exists 1 then dbms out...