Python入門教程 元組&字典&集合

元組

不可變的列表,不可變對象可以優化

tup = ()
tup = (1)
tup is 1
>>>True

tup = (1)
tup
>>>1

tup = (1,)
tup
>>>(1,)

type(tup)
>>>tuple

tup = (1001,1003,"Test")
tup[1]
>>>1003

tup[1] = 1992
tup[1]
>>>報錯

元祖賦值問題

tup = (1,2,[3,4])
tup[2] +=[5,6]

tup
>>>(1,2,[3,4,5,6])
##元祖不可修改,但是裏面的列表則可以修改,內存地址不變

元祖不可刪除 但是可以組合(index切片)

(1,2)+(3,4)
>>>(1,2,3,4)

tup = (1,2,'a',1)
tup.index(1)
>>>0
tup.index(1,2)
>>>3
tup.index(1,1,4)
>>>3

tup.count(1)
>>>2
##獲取數量

##(1)爲元素爲1的索引,(1,2)1的元素從第2個索引開始,(1,1,4)1的元素從第1個索引開始到第4個索引。返回第一個符合值的索引位置

##相當於切片 tup[1:4]?

 

字典

price_map = {"a":2}
dct = {}
dct[1] = "a"
dct["a"] = 1

dct
>>>{"a":1}

dct.get('a')
>>>1

dct['b']
>>>報錯

dct.get('b',2)
##如果沒有就返回2

dct["a"]=4
dct.update(a=1,b=2,c=3)
dct
>>>dct{"a":1,"b":2,"c"=3}


"a" in dct
>>>True

del dct["a"]

列表用索引訪問,字典用鍵訪問,列表有順序,字典沒順序

dct.key()
>>>dict_keys(['a','c'])
dct.values()
>>>dict_values([1,2])
dct.item()
dict_items([("a",1),("c",2)])

集合

{1,3,2,1}
>>>{1,2,3}
#集合沒有重複 有序嗎?

set([1,3,2,1])
>>>{1,2,3}

list({1,3,2,1})
>>>[1,2,3]

##執行一次列表操作

s = set()
s
>>>set()

s.add(1)
s
>>>{1}

s.update([2,3])
s
>>>{1,2,3}

s.update([3,4])
s
>>>{1,2,3,4}
s.remove(4)
>>>{1,2,3}
s.remove(4)
s
>>>報錯
s.discard(4)
>>>不報錯
##集合無序

issubset/issuperset 判斷超集和子集關係
set([1]).issubset(set([1,2]))
>>>True

set([1]).issuperset(set([1,2]))
>>>False

set([1,2]).issuperset(set([1]))
>>>True

##交集 並集 補集
s1 = set([1,2,3])
s2 = set([3,4,1])
s1&s2 
>>>{1,3}
s1 | s2
>>>{1,2,3,4}
s1-s2
>>>{2,}
s2-s1
>>>{4}

元組擴展閱讀

1. https://docs.python.org/3/library/timeit.html

2. http://t.cn/RnvaZ6j

 

字典擴展閱讀

1.https://docs.python.org/2/library/collections.htm l#collections.OrderedDict

2.https://developers.google.com/edu/python/dict- files

 

集合擴展閱讀

1. https://www.geeksforgeeks.org/sets-in-python/

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