Python 序列型別2 元組tuple)

2021-10-08 02:28:38 字數 4110 閱讀 1969

元組與列表相似,不同的是元組內的元素不可更改

列表與元組可以相互轉換

使用元組的好處

1.元組的建立

tup=(1

,2)tup1=(1

,)tup2=

('a'

,'b'

,'c'

)

元組的建立只需在小括號內新增由逗號分割的元素即可

注:當元組內只有乙個元素時,需在元素後加逗號否則型別不明確

如下

tup=(1

)tup1=(1

,)print

(type

(tup)

)print

(type

(tup1)

)

'int'>

'tuple'>

2.元組的訪問

元組內的元素可以通過索引值或切片訪問

tup=(1

,2,3

,4,5

)print

("第乙個元素是:"

,tup[0]

)print

("第乙個到第三個元素是,"

,tup[:3

])print

("該元組為:"

,tup)

執行結果如下

第乙個元素是: 1

第乙個到第三個元素是,

(1, 2, 3)

該元組為: (1, 2, 3, 4, 5)

3.元組的修改

元組內的元素是不能被修改的,但我們可以建立乙個新元組,對需修改元組進行拼接。

tup=

('中國'

,'美國'

,'英國'

,'法國'

)tup1=

('德國'

,'日本'

,'義大利'

)tup2=tup1+tup

#tup[1]='加拿大' 錯誤 元組元素不可被修改

print

(tup2)

執行結果如下

(

'德國'

,'日本'

,'義大利'

,'中國'

,'美國'

,'英國'

,'法國'

)

4.元組的刪除

元組內的元素不可修改自然也不可刪除,但是我們可以使用del方法刪除整個元組

tup=

('中國'

,'美國'

,'英國'

,'法國'

)print

(tup)

del tup

print

(tup)

執行結果如下

nameerror: name 'tup' is not defined  #這裡已經刪除整個元組,tup已經被**

('中國'

,'美國'

,'英國'

,'法國'

)

5.元組的內建方法

cmp(tuple1, tuple2) (!!python2下內建方法)

比較兩個元組元素

operator.eq(tup,tup2) (python3下內建方法)比較兩個元組元素

len(tuple)計算元組元素個數

max(tuple)返回元組中元素最大值

min(tuple)返回元組中元素最小值

tuple(seq)將列表轉換為元組

5-1 比較兩個元素operator.eq()

在python2 中內建比較方法為cmp(tuple1,tuple2) ,在python3中取消了該方法,取而代之的是operator.eq(),使用時需匯入operator 庫

這裡使用python3為例

import operator

tup=(1

,2,3

)tup_1=(1

,2,4

)tup1=

('a'

,'b'

,'c'

)tup1_1=

('a'

,'c'

,'b'

)tup1_2=

('a'

,'b'

,'c'

,'d'

)tup2=

("hello",)

tup2_1=

("halo",)

print

(operator.eq(tup,tup_1)

)#數字與數字

print

(operator.eq(tup1,tup1_1)

)#字元與字元

print

(operator.eq(tup1,tup1_2)

)#字元與字元

print

(operator.eq(tup2,tup2_1)

)#字串與字串

print

(operator.eq(tup,tup2_1)

)#數字與字串

混合元組之間也可以相互比較

執行結果如下

false

false

false

false

false

5-2 計算元組的長度len(tuple)
tup=(1

,2,3

,4,5

)print

(len

(tup)

)

執行結果如下

5
5-3 計算元組內元素最大值max(tuple)與最小值min(tuple)
tup=(1

,2,3

,4,5

)tup1=

('a'

,'b'

,'c'

,'c'

)tup2=

('hello'

,'helloa'

,'halo'

)print

(max

(tup)

)print

(max

(tup1)

)print

(max

(tup2)

)

執行結果如下

5

chelloa

5-4 列表轉換為元組 tuple(list)
list1=[1

,2,3

,4]print

(tuple

(list1)

)

執行結果如下

(1, 2, 3, 4)
元組推導式

與列表推導式相同,元組也有推導式,用於批量生成有一定規律的元素並放入元組內

tup1=

(x for x in

range(10

)if x%2==

0)print

(tup1)

print

(tuple

(tup1)

)

執行結果如下

at 0x000002060a70b408>

(0, 2, 4, 6, 8)

注:用推導式直接生成的是迭代器

需要轉換為tuple型別

python3元組 Python3元組

python的元組與列表相似,不同之處在於元組的元素不能修改 元組使用小括號,列表使用方括號 元組建立很簡單,只需要在括號中新增元素,並使用逗號隔開即可。建立空元組 tup1 tup2 1,元組只包含乙個元素時,需要在元素後面新增逗號,否則括號會被當作運算子使用 元組與字串類似,下標索引從0開始,可...

Python2 元組 cmp 方法

python2 元組 cmp 方法用於比較兩個元組,如果 t1 t2返回 1,如果 t1 t2返回 0,如果 t1 t2返回 1。cmp 方法語法 cmp t1,t2 如果比較的元素是同型別的,則比較其值,返回結果。如果兩個元素不是同一種型別,則檢查它們是否是數字。如果有乙個元祖首先到達末尾,則另乙...

Python學習 4 元組

1.在python中有元組,列表,字串三種序列 在上一節我們介紹了字串這種序列,下面我們介紹下有關序列的操作,注意這是序列的有關操作,也就是說元組,列表,字串都具有以下操作.str1 abcde str2 12345 print len str1 求序列長度 print str1 str2 連線兩個...