Python 中的列表

Python 中的列表

在本文中,我們將解釋 Python 中的列表。

您可以通過程式碼範例學習列表的各種操作和列表解析。

YouTube Video

Python 中的列表

在 Python 中,通常被稱為陣列的資料結構通常實作為「列表」。Python 列表非常靈活,允許以下操作:。

建立列表

1# Create an empty list
2my_list = []
3print(my_list)
4
5# Create a list with elements
6my_list = [1, 2, 3, 4, 5]
7print(my_list)
  • 您可以創建一個空列表或指定初始元素。

訪問和修改列表元素

1my_list = [1, 2, 3, 4, 5]
2print(my_list)  # [1, 2, 3, 4, 5]
3
4element = my_list[0]  # Get the element at index 0
5print(element)  # 1
6
7my_list[1] = 10  # Change the element at index 1 to 10
8print(my_list)  # [1, 10, 3, 4, 5]
  • 通過指定索引可以存取或修改列表元素。

獲取列表的長度

1my_list = [1, 2, 3, 4, 5]
2
3length = len(my_list)
4print(my_list)
5print(length)
  • 使用 len() 函數,您可以獲取元素的數量

向列表新增和插入元素

1my_list = [1, 2, 3, 4, 5]
2
3my_list.append(6)
4print(my_list)
  • 使用 append() 方法,您可以將元素加入列表的末尾
1my_list = [1, 2, 3, 4, 5]
2
3my_list.insert(2, "A")  # Insert "A" at index 2
4print(my_list)
  • 使用 insert() 方法,您可以在任意位置插入元素

從列表中移除元素

1my_list = [1, 2, 3, 4, 5]
2
3del my_list[2]  # Delete the element at index 2
4print(my_list)
5
6removed_element = my_list.pop(0)  # Delete and return the element at index 0
7print(removed_element)
8print(my_list)
  • 使用 del 陳述式或 pop() 方法,您可以移除指定位置的元素pop() 方法會回傳被刪除的元素。
1my_list = [1, 2, 3, 4, 5]
2
3my_list.remove(5)  # Remove the first occurrence of 5 from the list
4print(my_list)
  • 使用 remove() 方法,您可以刪除指定值的第一個出現項

列表切片

1my_list = [1, 2, 3, 4, 5]
2
3print(my_list[1:3])  # [2, 3]
4print(my_list[:3])   # [1, 2, 3]
5print(my_list[2:])   # [3, 4, 5]
6print(my_list[:])    # [1, 2, 3, 4, 5]
  • 分割語法 [start:end] 取得從 startend - 1 的元素。您也可以省略 startend

列表排序

1my_list = [2, 1, 5, 4, 3]
2print(my_list)  # [2, 1, 5, 4, 3]
3
4my_list.sort()  # Sort in ascending order (modifies the list)
5print(my_list)  # [1, 2, 3, 4, 5]
6
7my_list.sort(reverse=True)  # Sort in descending order
8print(my_list)  # [5, 4, 3, 2, 1]
  • sort() 方法可以將列表按升序或降序排序。
1my_list = [3, 1, 4, 2]
2sorted_list = sorted(my_list)
3print(my_list)       # [3, 1, 4, 2]
4print(sorted_list)   # [1, 2, 3, 4]
  • sorted() 函數可以建立一個新的已排序列表,並且不會更改原來的列表。

創建反向列表

1my_list = [1, 2, 3, 4, 5]
2
3my_list.reverse()
4print(my_list)
  • reverse() 方法可以反轉列表中的元素順序。

列表生成式

在 Python 中,您可以使用強大的列表生成式語法來簡潔地生成列表。列表生成式讓您可以用一行代碼實現透過 for 迴圈生成新列表的過程。您也可以使用條件語句,僅提取特定元素。

 1# Generate squares of numbers from 0 to 9
 2squares = [x**2 for x in range(10)]
 3print(squares)  # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
 4
 5# Use a condition to extract squares of even numbers only
 6even_squares = [x**2 for x in range(10) if x % 2 == 0]
 7print(even_squares)  # [0, 4, 16, 36, 64]
 8
 9# Store either the square or the original number based on a condition
10squares_or_original = [x**2 if x % 2 == 0 else x for x in range(10)]
11print(squares_or_original)
12# Output: [0, 1, 4, 3, 16, 5, 36, 7, 64, 9]
  • 使用列表生成式,您可以通過迴圈和條件,簡潔地建立新的列表。透過使用 ifif-else,你可以建立基於條件提取元素或產生不同值的串列生成式。

串列的連接

 1# Concatenate two lists using the + operator
 2a = [1, 2, 3]
 3b = [4, 5, 6]
 4combined = a + b
 5print(combined)  # [1, 2, 3, 4, 5, 6]
 6
 7# Extend an existing list with another list
 8a = [1, 2, 3]
 9b = [4, 5, 6]
10a.extend(b)
11print(a)  # [1, 2, 3, 4, 5, 6]
12
13# Concatenate multiple lists using unpacking (*)
14a = [1, 2, 3]
15b = [4, 5, 6]
16c = [7, 8, 9]
17merged = [*a, *b, *c]
18print(merged)  # [1, 2, 3, 4, 5, 6, 7, 8, 9]
  • 在 Python 中,你可以使用 + 運算子、extend() 方法,或是解包語法(*)來連接串列。建立新串列時通常會使用 +*,而更新已存在的串列時則會使用 extend()

總結

列表是 Python 中的一種基礎數據結構,並被應用於多種情境。列表有許多靈活且實用的功能,熟練掌握能讓程式設計更加高效。

您可以在我們的 YouTube 頻道上使用 Visual Studio Code 來跟隨上述文章一起學習。 請也查看我們的 YouTube 頻道。

YouTube Video