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