Python基礎學習筆記5 tuple,set

1. tuple是一種序列類型的數據,和list,str很類似,它的特點是其中的元素不能更改,元素可以是任何類型(list類似)

2. tuple和list的相互轉化:分別用list(), tuple()就可以相互轉換

listA = ['I','am','learning','python']
testTuple = tuple(listA)
print testTuple

返回:('I', 'am', 'learning', 'python')

3.tuple通常用在定義常量,對數據進行寫保護,因此它的操作效率比list要高

4.set: 非序列類型的數據,不可以重複
set的定義方法之一:
s1 = set("aabbcc")
print s1

返回set(['a', 'c', 'b'])



但是不能創建含有list/dict的set,set的賦值或者說原地修改和list 不一樣,不能通過索引去刪除,可以通過set.add()方法:
s1.add("c")
print s1

返回set(['a', 'c', 'b']) 因爲c已經存在,所以被屏蔽掉了

方法之二:
s1 = {'hello','Python'}
print type(s1)
返回<type 'set'>
help(set)可以查看所有set的方法:e.g s1.pop()刪除並且返回該元素,s1.update(s2),合併兩個set


有意思的小區別:s1.remove() s1.discard()都是刪掉元素,但是discard如果元素不存在,do nothing,而remove就會報錯:raise a keyError
set的強大之處在於對集合的處理,
求s1是否是s2的子集:
s2 = {'hello','Python', 'I','like','it'}
print s1.issubset(s2)
返回:True
求並集:s1 union s2  (或者 s1 | s2)
求交集:
print s1.intersection((s2))
返回set(['Python', 'hello'])
更多方法在需要用到的時候可以用help(set)去查詢,thanks God


發佈了43 篇原創文章 · 獲贊 12 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章