python基礎知識之元組

元組是什麼?

  • 你能夠把它看做是隻讀的列表,由於元組不可改變,可是要注意,若是元組中含有列表元素,則該列表元素是可變的,通俗地講就是「兒子不可變,可是孫子可變」
  • 因爲元組不可變,因此對於增刪改查這四種標準操做來說只有查能實現,元組的查詢操做很簡單

建立元組

能夠經過直接賦值的方式建立元組,用逗號間隔元素,能夠用括號括起來,但這不是必要的,重要的是逗號,好比:app

a = 1,2,3
b = (1,2,3)
print(type(a))
print(type(b))
對於a和b兩種建立方式是等價的,a和b的類型都是元組,輸出結果爲:
<class 'tuple'>
<class 'tuple'>

可是若是建立單個元素的元組,則必須在後面多加一個逗號,好比:函數

a = 1,
print(type(a))
輸出結果爲:
<class 'tuple'>

在數字1後面加上一個逗號,則它的類型就是元組,不然它的類型就是int

而若是隻用括號的話,則不是元組:
a = (1)
print(type(a))
輸出結果爲:
<class 'int'>
因此更加說明了括號不是重要的,重要的是逗號。

訪問元組

能夠方便地用索引以及切片的方法來訪問元組:code

a = 1,2,3,4,5,6,7
print(a[1::2])
輸出爲:
(2, 4, 6)

修改元組

元組自己是不可修改的,可是若是其中包含的元素可變的話,則能夠對該元素內部修改,好比:對象

a = 1,2,3,[2,3,4]
a[3].append('new')
print(a)
輸出爲:
(1, 2, 3, [2, 3, 4, 'new'])
雖然a是元組,可是索引3的元素是列表,這時能夠對該列表進行修改。

元組運算符

可與使用加號來鏈接兩個元組索引

a = 1,2,3
b = 4,5,6
c = a + b
print(c)
輸出爲:
(1, 2, 3, 4, 5, 6)

也能夠使用乘號:class

a = 1,2,3
b = a*4
print(b)
輸出爲:
(1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3)

固然也能夠用成員運算符in方法

通用地能夠使用del刪除元組查詢

元組相關內置函數

len() 計算元組元素個數。
max() 返回元組中元素最大值
min() 返回元組中元素最小值。生成器

tuple(可迭代對象) 將可迭代對象轉換爲元組。co

r1 = (i**2 for i in range(10))
r2 = range(10)
a = tuple(r1)
b = tuple(r2)
print('a:',a)
print('b:',b)
輸出爲:
a: (0, 1, 4, 9, 16, 25, 36, 49, 64, 81)
b: (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
本例中r1是生成器,r2是可迭代對象。均可以用tuple()轉換爲元組。
相關文章
相關標籤/搜索