python 資料型別 tuple

2021-09-13 13:09:04 字數 2840 閱讀 5447

python資料型別 - list :

tuple,即元組。是python內建的一種有序列表。跟list相比,tuple有比較特別的地方。

那tuple有什麼好處呢?因為不可變,所以**更加安全。如果可以,盡量用tuple代替list。

1、 定義乙個空tuple

t = ()

t # 呼叫

輸出:()

2、 定義乙個只有乙個元素的tuple如下示例,注意比較「t」與「s」的區別,通過type()函式也可以清楚的看到。

>>> t = ('xyz')

>>> t

'xyz'

>>> type(t)

>>>

>>> s = ('abc',)

>>> s

('abc',)

>>> type(s)

>>>

3、定義乙個多個元素的tuple
t = (1,2,'abc')

t # 呼叫

輸出:(1,2,'abc')

>>> t = ('a','b',['c','d'])       # tuple裡包含可變的list

>>> t [2][0]

'c'>>> t[0][1]

traceback (most recent call last):

file "", line 1, in indexerror: string index out of range

>>> t [2][0] = 'c'                # 修改tuple中的list型別值

>>> t

('a', 'b', ['c', 'd'])

>>> t[0][0] = 'e'

traceback (most recent call last):

file "", line 1, in typeerror: 'str' object does not support item assignment

塊一中修改tuple中list的元素,tuple沒有變,變的是list的元素。

tuple一開始指向的list並沒有改變成別的list,id(list)沒有變化。所以,tuple所謂的「不變」,是說tuple的每個元素指向永遠不變,但是指向的list內容是可變的。

>>> h = ('a','b','c')

>>> h1 = ('a',) + h[1:] # 用slice方法取得列表的一部分,其實是重新給物件賦值

>>> h1

('a', 'b', 'c')

(1)python中,tuple型別為預設的集合型別python中,賦值可以採用序列賦值的方式,如下

(2)tuple序列作為函式預設的返回值型別,所有不包括符號封裝的函式返回值都是元組型別python函式返回值是乙個tuple型別的值。返回值為乙個時,括號省略;返回值為多個時,為同乙個tuple接收,並把位置賦給相應的值。

若要返回乙個list型別,則顯示用「」進行修改。

def swap(x,y):

return y,x # return [y,x] 或者 return(y,x)

>>> swap(2,3)

(3, 2)

(1) 兩個元組的合併操作實際效果如下圖:

(2) in操作符

判斷元素i是否在tuple_a中,返回true or false。

if i in tuple_a :

(3) 訪問元組元素通過切片來訪問元組的元素,它的切片操作跟列表list是一樣,也是通過「切片操作符」+索引index來訪問。

(4) 一些內建函式

(5) 比較操作符

元組還可以進行一些比較操作符的操作,比如「>」、「

「大於」和「小於」只能比較同型別的tuple,如下示例:

>>> a = (1,2)

>>> b = ('a','b')

>>> c = (1,2,3)

>>> a > b

traceback (most recent call last):

file "", line 1, in typeerror: '>' not supported between instances of 'int' and 'str'

>>>

>>> a == c

false

大家可以隨意去操作一下,就能清楚了,不算是重點。

有小夥伴能告訴我,專欄裡的文章如何改變排序嗎?

python資料型別(元祖tuple)

元祖 元組 tuple 就是不可更改的列表,一旦建立,便不可更改。除了表示的方式有點不一樣 元組的元素不可更改,元組的其他特性與列表基本一致。一 元祖的建立 t tuple 建立乙個空元組 t1 建立乙個空元組 t2 1,或 t2 1,建立乙個只有乙個元素的元組 特別要注意,逗號不能少 t3 hel...

Python基礎資料型別tuple元祖

元祖就是不可變的列表 元祖用 表示,元素與元素之間用逗號隔開,資料型別沒有限制 tu 科比 詹姆斯 喬丹 tu tuple 123 小括號中 有乙個元素,有逗號就是元祖,沒有就是它本身 空的小括號就是元祖 索引和切片與列表和字串相同 不可變指的是,第一層元素不可變 元祖 唯讀列表,可迴圈查詢,可切片...

python學習之資料型別(tuple)

v 11,22,33,asd 漢字 元組就是不可變的列表,又叫制度列表,屬性特徵與字串相似,裡邊可以存放任何型別的元素。這裡元組的不可變的意思是 元素不可變,子元素內部的 元素是可以變,這取決於子元素是否是可變物件.元組中如果只有 個元素,定要新增 個逗號,否則就不是元組,而是元素本身,例如 1 表...