序列 序列是Python中最基本的數據結構,包括字元串、列表、元組。 序列,顧名思義,是有序的,序列都有索引,都能進行索引、切片(截取)、加(連接)、乘(倍增)、檢查成員的操作。 因為序列有序,可通過位置來區分元素,所以序列中可含有相同的元素。 序列的通用操作 1、索引 seq[index] ind ...
序列
序列是Python中最基本的數據結構,包括字元串、列表、元組。
序列,顧名思義,是有序的,序列都有索引,都能進行索引、切片(截取)、加(連接)、乘(倍增)、檢查成員的操作。
因為序列有序,可通過位置來區分元素,所以序列中可含有相同的元素。
序列的通用操作
1、索引
seq[index] index從0開始,支持負數,-1表示最後一個元素。
2、切片(截取)
seq[start:end] 可截取子序列,返回的是副本,原序列不變。預設時預設start為0,end為-1。
3、+(連接)
seq1+seq2+seq3+..... 將多個序列連接為一個序列,返回的是副本,原序列不變
序列的類型要相同,才能相加,比如列表只能+列表,不能+字元串。
4、*(倍增)
seq*n 將序列擴展為原來的n倍,比如“hello”*2就是“hellohello”。返回的是副本,原序列不變。
5、in、not in(檢查成員)
element in/not in seq 判斷某個成員是否在序列中,返回值是bool型
6、python內置函數,不必導入模塊:
len(seq) 返回序列長度(元素個數)
max(seq) 返回序列中值最大的元素
min(seq) 返回序列中值最小的元素
列表(List)
列表中的元素類型可以不同,甚至可以嵌套複雜的數據類型。列表用中括弧[ ]表示。
list1=[1,2,3] #類型相同 list2=[1,"ok",[1,2,3]] #類型不同&&嵌套
列表的常用方法
函數 | 描述 |
list.append(ele) | 在list末尾添加一個元素 |
list.insert(index,ele) | 在指定位置插入一個元素 |
list.count(ele) | 統計list中ele出現的次數 |
list.extend(x) |
擴展list,x可以是列表、元組、集合、字典(只添加key)。添加到list的末尾。 +連接只能連接相同類型的序列。 |
list.index(ele) | 索引元素,返回索引 |
list.pop([index]) | 彈出(刪除)並返回指定位置上的元素,,預設index時預設為-1(最後一個元素)。 |
list.remove(ele) | 移除指定元素,若list中有多個ele,只移除第一個ele |
list.copy() | 複製list,返回覆制的列表。示例:list2=list1.copy() |
list.clear() | 清空列表 |
list.reverse() | 反序排列 |
list.sort(reverse=True) |
將列表中的元素按升/降序排列,預設參數時預設為False(升序),True是降序。示例: list.sort() #升序排列 list.sort(reverse=True) #降序排列 註意:此函數不返回排序後的列表。 |
列表(List)是可變的,如果上述方法修改了List,List會改變。
數字(Number)、字元串(String)、元組(Tuple)是不可變的,操作時返回的往往是副本,原來的值不變。
元組(Tuple)
元組中可以含有不同類型的數據。
元組不能被修改,不能刪除、修改元組中的元素,但可以用del刪除整個元組。
元組用小括弧()表示。
tuple1=() #空元組 tuple2=(1,4,3)
tuple3=(1,"ok",[1,2,3]) #類型不同&&嵌套
列表、元組之間的轉換
1、list(seq) 將其他序列轉換為列表
myTuple=(1,2,3) print(list(myTuple)) #[1, 2, 3] """ python的內置函數list(seq)可以將其他序列轉換為列表,並返回該列表 此函數不會修改seq本身 """
2、tuple(seq) 將其他序列轉換為元組
myList=[1,2,3] print(tuple(myList)) #(1, 2, 3) """ python的內置函數tuple(seq)可以將其它序列轉換為元組,並返回該元組 此函數不會修改seq本身 """
這2種方法均不會修改參數本身。