python中的資料結構主要有:序列、集合和字典
是一種可迭代的、元素有序、可以重複出現的資料結構。序列可以通過索引訪問元素
序列包括的結構有列表(list)、字串(str)、元組(tuple)、範圍(range)、位元組序列bytes。序列可進行的操作有索引,分片、加和乘
序列中第乙個元素的索引是0。其他元素的索引是第乙個元素的偏移量,可以有正偏移量。稱為正值索引,所以也可以有負偏移量。稱為負值索引。正值索引的最後乙個元素,索引是序列長度-1。複製索引最後乙個元素索引是-1,最小值 -序列長度+1
a = 'hello'
print(a[0])
print(a[-1])
print(max(a)) 返回最後乙個元素
print(min(a)) 返回第乙個元素
print(len(a)) 長度
a = 'hello'
a*3 'hellohellohello'
a += ' world' 'hello world'
序列的分片(slicing)就是從序列中切分出小的只序列,分片使用分片運算子有兩種形式。
[start:end]
:start是開始索引,end是結束索引。
[start:end:step]
:start是開始索引,end是結束索引,step是步長,是分片時獲取元素的間隔。可以為正負整數。分片包括start位置元素,但不包括end元素位置,start和end的都可以省略
a[1:3] a[0:3] a[:3] a[0:] a[0:5] a[:] a[1:-1]
a[1:5:2] a[::-1] = 'olleh'
tuple是一種序列(sequence)結構
元組是一種不可變序列,一旦建立就不能修改,建立元組可以使用 tuple([iterable]) 函式或直接用逗號將元素分隔
(1,2,3,'hello',2.3)
tuple([22,12,45])
當元組只有乙個元素時,後面的逗號不能省略
a = (12,)
b = ()
a = (1,2,3,'hello',2.3)
a[3] 'hello'
a[1:3] (2,3)
a[2:]
a[:2]
a = (1,2,3,'hello',2.3)
n1,n2,n3,str1,d1 = a
print(n1) 值 1
接收拆包元素的變數個數應該等於元組個數,個數也可以少於元組個數,下劃線表示不接收
n1,n2,n3,*n = a
print(n) 值 ['hello',2.3]
n1,_,n3,_,d1 = a
a = (21,22,23,24)
for item in a:
print(item)
for i, item in enumerate(a):
print("-".format(i, item))
其中,enumerate(a)
函式可以獲得元組物件,該物件有兩個元素,第乙個是索引,第二個是元素值,所以(i, item)
是元組拆包過程。
這裡的元組遍歷適合,字串,範圍,列表。
007python中的元組
一 什麼是元組元組的型別名 tuple 元組就是不可變的列表 元組是容器型資料型別,將 作為容器的標誌,多個元素之間用逗號隔開 元素1 元素2 元素3,元組不可變 不支援增刪改 元組是有序的 支援下標操作 注意 空元組的表示 set1 元組中只有乙個元素的表示 set2 元素1 一定要加逗號二 元組...
python 資料結構 元組 tuple
字串 變數引用str s abc s abc 元組 如果這樣寫,就會是.t 123,abc come here t 123,abc come here 上面例子中看到的變數t,並沒有報錯,也沒有 最後乙個有效 而是將物件做為乙個新的資料型別 tuple 元組 賦值給了變數t。元組是用圓括號括起來的,...
Python之資料結構 元組
元組與列表的最大區別是列表可以修改 可以讀取 可以刪除,而元組建立之後則不能修改,但是可以刪除整個元組。1 定義元組 l1 1,2,3 print l1 print type l1 執行結果 如果元組只有乙個元素,則這個元素後面必須要有 否則元素就還是其原來的型別。l1 1,2,3 print l1...