Python 列表:数组、方法和迭代
了解有关 Python 列表的所有内容。了解如何在 Python 中原生创建、切片、修改和迭代数组。
概述
在 Python 中,列表是用于存储数据集合的四种内置数据类型之一。您可以将列表视为动态数组,其中按特定顺序保存一系列项目。列表的用途非常广泛,几乎在每个编写的 Python 脚本中都严重依赖列表,从简单的待办事项应用程序到复杂的机器学习管道。
与强制执行统一数据类型的静态类型语言中的数组不同,Python 列表可以是完全异构的。这意味着单个列表可以轻松地容纳整数、浮点数、字符串、对象甚至其他嵌套列表的混合。您可以通过将项目括在方括号“[]”中来声明列表,并用逗号分隔每个项目。
列表已排序并建立索引。列表中的项目被映射到从“0”开始的整数索引。因此,第一个项目通过“my_list[0]”访问,第二个项目通过“my_list[1]”访问,依此类推。 Python 还支持负索引,这是一个独特的强大功能,其中“my_list[-1]”检索最后一项,“my_list[-2]”检索倒数第二项,从而无需手动计算列表长度。
列表是完全可变的,这意味着它们可以在创建后就地修改。您可以通过索引重新分配特定项目,或利用内置方法。像 `.append()` 这样的方法在末尾添加一个项目,`.insert()` 在特定索引处注入一个项目,`.remove()` 或 `.pop()` 删除项目。列表还具有用于算法排序的“.sort()”和用于翻转序列的“.reverse()”。
Python 列表独有的一个强大功能是“切片”。切片允许您通过指定开始索引、停止索引和步长来提取子列表,格式为“my_list[start:stop:step]”。这使得开发人员能够在一行高度优化的 C 支持代码中抓取数组块、复制数组,甚至反转它们,从而使数据操作变得非常具有表现力。
代码和执行输出
演示初始化、索引、修改和标准列表迭代。
fruits = ["apple", "banana", "cherry"]
fruits.append("orange") # Add item
fruits[1] = "mango" # Change item
fruits.sort() # Alphabetical sort
print(f"List: {fruits}")
print(f"First fruit: {fruits[0]}")
print(f"Total fruits: {len(fruits)}")List: ['apple', 'cherry', 'mango', 'orange']
First fruit: apple
Total fruits: 4逐步实施
- 像任务队列一样保存有序集合
- 随着时间的推移积累数据点
- 实现栈和队列
常见问题解答
什么是列表理解?
当您想要基于现有列表的值创建新列表时,这是一种较短的语法。示例:[x 代表水果中的 x,如果 x 中有“a”]
列表和元组有什么区别?
列表是可变的(可更改的),而元组是不可变的(不可更改的)。元组使用括号 ()。
相关主题
推荐的 Python 资源
通过相关的交互式教程、备忘单和代码比较来扩展您的知识。