python資料結構之列表和元組的詳解

2021-10-03 13:31:34 字數 2944 閱讀 3094

這篇文章主要介紹了python資料結構之列表和元組的詳解的相關資料,希望通過本文能幫助到大家,讓大家徹底理解掌握這部分內容,需要的朋友可以參考下

python資料結構之 列表和元組

序列:序列是一種資料結構,它包含的元素都進行了編號(從0開始)。典型的序列包括列表、字串和元組。其中,列表是可變的(可以進行修改),而元組和字串是不可變的(一旦建立了就是固定的)。序列中包含6種內建的序列,包括列表、元組、字串、unicode字串、buffer物件、xrange物件。

列表的宣告:

mylist =

2.列表的操作:

(1) 序列的分片:

用法:mylist[startindex:endindex:step]

exam:

mylist[2:10] 檢索第2個字元到第10個字元,預設步長為1.

mylist[2:10:2] 檢索第2個字元到第10個字元,指定步長為2.

mylist[-2:-1:2] 正數索引是相對於首部的座標,負數是相對於尾部的座標。其實座標一定要小於終止座標,否則返回空的分片。

mylist[-12:-2:-2] 步長也可以是負數,表示從右向左提取元素。

(2) 序列的索引:

用法:mylist[index]

exam:

mylist[2] mylist[-2]

ps:正數是相對於首部的座標,負數是相對於尾部的座標。

(3) 序列相加:

用法: mylist1 + mylist2 <=

=>

[1,2] + [3,4]

(4) 序列乘法:

用法: mylist * 5 mylist元素重複5次。

(5) in操作符:

用法: 『item' in mylist 判斷mylist是否包含某一成員。

3.列表涉及的內建函式: 內建函式len、min、max針對列表操作非常有用。

(1) len函式返回序列中所包含元素的數量。

(2) min函式和max函式分別返回學列中最大和最小元素。

(3) list函式可以把字串轉換成列表。

exam: list('hello') =

>

['h','e','l','l','o'

](4) cmp函式用來比較2個元素的大小

exam: cmp(x,y)

=> 返回0表示相等, -1 則是 x < y 1 則是 x > y

(5) reversed函式對序列進行反向迭代。

(6) sorted 返回已排序的包含seq所有元素的列表。

4.列表的方法:

exam:lst=

=>

[1,2,3,4]

(2)count: count方法統計某個元素在列表**現的次數。

exam: x=

[[1,2],1,1,[2,1,[1,2]

]] x.count(1)

=> 1

(3)extend: extend方法可以在列表的末尾一次性追加另外乙個序列的多個值。即:可以用新列表擴充套件原有列表。

exam: a=

[1,2,3] b=

[4,5,6] a.extend(b)

=>

[1,2,3,4,5,6]

(4)index: index方法用於從列表中找出某個值第乙個匹配項的索引位置。

exam:lst=

['we','le','at'

] lst.index(

'le')=

> 1

(5)insert:insert方法用於將物件插入到列表中:

exam:lst=

[1,2,3,4,5,6] lst.insert(3,8)

=>

[1,2,3,8,4,5,6]

(6)pop: pop方法移除列表中的乙個元素(預設是最後乙個),並且返回該元素。

(7)remove: remove方法移除列表中某個值的第乙個匹配項:

exam: x=

['to','be','or'

] x.remove(

'to')=

> 你懂得。

(8)reverse 方法將列表中的元素反序。

(9)sort 方法用於在原位置對列表進行排序。 

exam: sort方法有預設的排序方法,另外還具有高階排序的用法,sort方法有兩個可選的引數,key 和 reverse,key指定排序的關鍵字引數,指定後排序會按key的大小來排序,reverse用於指定是否反序。

x.sort(key=len)

=> 表示按照字串的長度排序。

x.sort(reverse=true)

=> 表示反序排序。

x.sort(cmp)

=> 指定排序函式,***。

5.元組:元組和列表一樣,也是一種序列。唯一的不同是元組不能修改。

(1) 宣告方式:

用逗號分隔一些值,就自動建立了元組。 exam: 1,2,3 =

>

(1,2,3)

也可以通過園括號宣告。 exam: (1,2,3) =

>

(1,2,3)

(2) 元組的乘法:

3*(40+2) =

>

(42,42,42)

6.元組涉及的內建函式:

(1)tuple函式的功能和list函式的基本上是一樣的:以乙個序列作為引數並把它轉換為元組。

exam: tuple(

[1,2,3])=

> tuple(1,2,3)

7.元組的分片:

exam: x=1,2,3 x[1]

=> 2 x[0:2]

=>

(1,2)

python資料結構之列表

和字串一樣,列表也是python中使用最普遍的資料結構之一,而且它很靈活,可以儲存多種不同的物件 數字,字串,甚至於其他的列表。列表的建立方法 1 利用python的內建方法list l1 list python l1 p y t h o n 2 直接賦值給方括號,元素之間用逗號隔開 l2 1,2,...

python資料結構之列表

null list int list 1 2,3 str list a b c int str list 1 2,a b int list 1 2,3 int list 4 out 1,2,3,1,2,3,1,2,3,1,2,3 一種是利用 操作符 int list 1 2,3 str list a...

資料結構之列表

在基礎資料結構中,列表作為最為基礎的乙個資料結構進行體現,在乙個程式中決定效率的關鍵核心因素就是資料結構和資料演算法,二者共同決定 時間複雜度的型別,因此萬丈高樓平地起,就從最基礎的列表操作和分析其時間複雜度開始 方法1 列表賦值 lis 方法2 列表疊加 列表疊加要注意,疊加的是可迭代物件 新增列...