更新於 2024/01/13閱讀時間約 4 分鐘

[Python基礎]容器 list(列表),tuple(元組)

在生活中置物櫃上有編號可以存放各種東西,在Python中也有類似的容器,就是list,list就像置物櫃一樣,有編號(索引)想放什麼就放什麽。

列表(List)和元組(Tuple)都是 Python 中用來存儲集合元素的數據結構,兩者看起來很像,在初學時很容易搞混,所以觀念要建立好。

可以把列表(List)和元組(Tuple)想像成是一個容器,什麼元素都可以塞

容器

儲存不同元素範例

宣告方式

列表(List): 使用方括號 [] 來定義列表。

my_list = [1, 2, 3]

元組(Tuple): 使用圓括號 () 來定義元組。

my_tuple = (1, 2, 3)

差異性

但它們之間有一些重要的區別。以下是列表和元組之間的主要差異

1. 可變性(Mutability):

  • 列表(List): 列表是可變的(mutable),這意味著你可以在創建後修改列表,添加或刪除元素,或者更改現有元素的值。
pythonCopy codemy_list = [1, 2, 3]
my_list[0] = 10 # 可以修改元素的值
my_list.append(4) # 可以添加元素
  • 元組(Tuple): 元組是不可變的(immutable),一旦創建後,你就不能修改它的內容。元組通常用於保存不希望被更改的數據。
    pythonCopy codemy_tuple = (1, 2, 3)
    # 下面的操作會引發錯誤,因為元組是不可變的
    # my_tuple[0] = 10

2. 資源效能:

  • 列表(List): 由於可變性,列表的操作可能會更耗資源,特別是當列表很大時。每次修改列表時,需要重新分配內存。
  • 元組(Tuple): 不可變性使得元組在某些情況下比列表更加輕量。對於不需要修改的數據,元組更加高效。

是可以互相轉換的

  • 從列表轉換為元組:
    tuple_from_list = tuple(my_list)
  • 從元組轉換為列表:
    list_from_tuple = list(my_tuple)

其他同樣用法

存取元素:

  • 通過索引存取元素:
    print(my_list[2])   # Output: 3
    print(my_tuple[2]) # Output: 3

切片:

  • 使用切片獲取部分序列:
    subset_list = my_list[1:4]
    subset_tuple = my_tuple[1:4]

遍歷元素:

  • 使用迴圈遍歷:
    for element in my_list:
    print(element)

    for element in my_tuple:
    print(element)

5. 內建函數:

  • 檢查元素是否存在:
    print(3 in my_list)   # Output: True
    print(3 in my_tuple) # Output: True
  • 取得序列的長度:
    length_list = len(my_list)
    length_tuple = len(my_tuple)

程式範例

my_list = [10, 0.3,True, None, -10]
my_tuple = (10, 0.3,True, None, -50)
print('串列: ',my_list )
print('元組: ',my_tuple)

#存取元素
#通過索引存取元素:
print('my_list 第一個索引:', my_list[1]) # Output: 0.3
print('my_tuple 第一個索引:',my_tuple[1]) # Output: 0.3
#切片
subset_list = my_list[1:4]
print('切片',subset_list)
# for迴圈 遍歷取出
for element in my_list:
print('for迴圈取出',element)
# in檢查0.3是否在 列表內
print('檢查0.3是否在 列表內 : ' ,0.3 in my_list)
#len 查看列表長度
print('my_list列表長度: ',len(my_list))

程式輸出圖


在 Python 中,大多數的索引是從 0 開始,這包括列表、元組、字串等。

在程式設計中,「索引」通常指的是一個用來標識或定位資料元素的位子

索引也可以從後面取出,從 -1開始

索引介紹

使用場景:

  • 列表(List): 適用於需要頻繁修改、排序或添加/刪除元素的情況。
  • 元組(Tuple): 適用於不希望被更改的數據集,通常用於函數的返回值、作為字典的鍵等。


謝謝大家觀看~ 希望大家會喜歡,喜歡的話可以給愛心~追蹤一下,不會漏掉之後的文章喔~


分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.