Python 序列、列表(List)、元組(Tuple)


 

序列

序列是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種方法均不會修改參數本身。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM