tuple 和數(shù)組區(qū)別
元組(tuple)和數(shù)組(array)都是 Python 中用于存儲多個值的數(shù)據(jù)結(jié)構(gòu),但它們在實現(xiàn)和使用上有一些區(qū)別。
元組是不可變的,而數(shù)組是可變的。即元組一旦創(chuàng)建,其內(nèi)容就不能被修改,而數(shù)組可以進行添加、刪除、更改等操作。
元組中的元素可以是任何類型的對象,包括不同類型的對象;而數(shù)組通常要求所有元素具有相同的數(shù)據(jù)類型,以便在底層存儲時保持高效。
元組支持索引和切片操作,類似于字符串,但是數(shù)組有更多的方法和功能,如添加/刪除元素、排序、搜索等。
在 Python 中,元組通常用于表示不可變的、有序的數(shù)據(jù)集合,例如函數(shù)返回多個值時、訪問字典鍵值對、格式化字符串等場景;而數(shù)組通常用于存儲大量同類型的數(shù)據(jù),例如科學計算或者數(shù)值運算。
以下是一個簡單的示例,展示了元組和數(shù)組的一些基本操作:
python復制代碼
# 創(chuàng)建一個元組
my_tuple = (1, 2, 3)
# 創(chuàng)建一個數(shù)組
import array
my_array = array.array('i', [1, 2, 3])
# 訪問元組和數(shù)組中的元素
print(my_tuple[0]) # 輸出 1
print(my_array[1]) # 輸出 2
# 嘗試修改元組和數(shù)組中的元素
my_tuple[0] = 4 # 這行代碼將拋出 TypeError 異常,因為元組是不可變的
my_array[1] = 5 # 將數(shù)組中的第二個元素修改為 5
# 在數(shù)組末尾添加一個新元素
my_array.append(4)
# 獲取數(shù)組中元素的數(shù)量
print(len(my_array)) # 輸出 4
# 將數(shù)組轉(zhuǎn)換為列表
my_list = my_array.tolist()
在上面的示例中,我們創(chuàng)建了一個包含三個整數(shù)的元組和數(shù)組,并演示了如何訪問和修改它們的元素。需要注意的是,嘗試修改元組中的元素會導致 TypeError 異常,而向數(shù)組中添加或刪除元素是可以的。此外,我們還展示了如何獲取數(shù)組中的元素數(shù)量,并將其轉(zhuǎn)換為列表。