概述
Python 中的数据结构为我们提供了一种存储和排列易于访问和修改的数据的方法。这些数据结构包括集合。一些最常用的内置集合是列表、集合、元组和字典。
介绍
很难理解Python 中的列表、元组、集合和字典是什么?每个至少使用过一次 Python 的人都对它们之间的差异或何时使用它们感到困惑。好了,不多说了,我们将分解这些数据结构集合的差异并理解它们,以便我们永远不会忘记它们!
让我们仔细看看每个集合是什么:
Python 中列表、元组、集合和字典之间的主要区别
可变性:
- 列表:可变(可修改)。
- 元组:不可变(不可修改)。
- Set:可变,但里面的元素必须是不可变的。
- 字典:可变;键是不可变的,但值可以改变。
命令:
- 列表:保持元素的顺序。
- 元组:维护元素的顺序。
- 套装:不保证订单。
- 字典:从 Python 3.7+ 开始,插入顺序被保留。
独特性:
- 列表:允许重复。
- 元组:允许重复。
- 集合:只有独特的元素。
- 字典:键唯一,值可以重复。
数据结构:
- 列表:有序集合。
- 元组:有序集合。
- 集合:无序集合。
- 字典:键值对的集合。
Python中列表、元组、集合、字典的区别
参数 | 列表 | 元组 | 集合 | 字典 |
---|---|---|---|---|
Definition | 列表是有序的、可变的元素集合。 | 元组是有序的、不可变的元素集合。 | 集合是唯一元素的无序集合。 | 字典是键值对的无序集合。 |
Syntax | 语法包括用“,”分隔数据的方括号 [,]。 | 语法包括用“,”分隔数据的弯括号 ( , )。 | 语法包括大括号 { , } 以及用 ',' 分隔的数据。 | 语法包括大括号 { , } 和用 ',' 分隔的键值数据。 |
Creation | 可以使用 list() 函数或对 [] 进行简单赋值来创建列表。 | 可以使用 tuple() 函数创建元组。 | 可以使用 set() 函数创建集合字典。 | 可以使用 dict() 函数创建字典。 |
Empty Data Structure | 可以通过l = []创建一个空列表。 | 可以通过t = ()创建一个空元组。 | 可以通过s = set()创建一个空集。 | 可以通过{}创建一个空字典。 |
Order | 它是一个有序的数据集合。 | 它也是一个有序的数据集合。 | 它是无序的数据集合。 | Python 版本 3.7 中的有序集合,Python Version=3.6 中的无序集合。 |
Duplicate Data | 列表中允许重复的数据输入。 | 元组中允许重复的数据输入。 | Set 中的所有元素都是唯一的。 | 键是唯一的,但两个不同的键可以具有相同的值。 |
Indexing | 具有从“0”开始的基于整数的索引。 | 还具有从“0”开始的基于整数的索引。 | 没有基于索引的机制。 | 具有基于键的索引,即键标识值。 |
Addition | 可以使用append()方法添加新项目。 | 由于是不可变的,因此无法向其中添加新数据。 | add() 方法将一个元素添加到集合中。 | update() 方法更新特定的键值对。 |
Deletion | Pop() 方法允许删除元素。 | 由于不可变,因此无法弹出/删除任何数据。 | 可以使用 pop() 随机删除元素。 | pop(key) 删除指定的键及其值。 |
Sorting | sort() 方法对元素进行排序。 | 不可变,因此排序方法不适用。 | 无序,因此不建议排序。 | 使用sorted()方法对键进行排序。 |
Search | index() 返回第一次出现的索引。 | index() 返回第一次出现的索引。 | 无序,因此不适用搜索。 | get(key) 根据指定的键返回值。 |
Reversing | reverse() 方法反转列表。 | 不可变,因此反向方法不适用。 | 无序,因此不建议反向。 | 没有基于整数的索引,因此没有反转。 |
Count | count() 方法返回出现次数。 | count() 方法返回出现次数。 | count() 没有为集合定义。 | count() 没有为字典定义。 |
让我们在以下主题中了解有关列表、元组、集合和字典的更多信息:
列表
列表是Python提供的最常用的数据结构之一;它们是可迭代、可变和有序数据的集合。它们可能包含重复的数据。
当然!以下是针对每个数据结构提取和组织的代码片段,并使用适当的副标题:
句法
代码:
list1 = [1 , 2, 'abc', 3, 'def']
list2 = []
list3 = list((1, 2, 3))
print(list1)
print(list2)
print(list3)
输出:
[1, 2, 'abc', 3, 'def']
[]
[1, 2, 3]