五步让你掌握Python数据结构


五步让你掌握Python数据结构

文章插图
 
Python/ target=_blank class=infotextkey>Python数据结构简介四种基本的 Python 数据结构:
  • 列表 - 有序、可变、允许重复元素 。对于存储数据序列很有用 。
  • 元组 - 有序、不可变、允许重复元素 。将它们视为不可变的列表 。
  • 字典 - 无序、可变、由键值对映射 。对于以键值格式存储数据很有用 。
  • 集合 - 无序、可变、包含唯一元素 。对于成员资格测试和消除重复很有用 。
除了基本的数据结构之外,Python 还提供了更高级的结构,例如堆、队列和链表,这些可以进一步增强您的编码能力 。这些高级结构建立在基础结构的基础上,可以实现更复杂的数据处理,并且通常用于特殊场景 。但并不受限于这里;也可以使用所有现有结构作为基础来实现您自己的结构 。
第 1 步:在 Python 中使用列表Python 中的列表是什么?
Python 中的列表是一种有序的、可变的数据类型,可以存储各种对象,并允许重复元素 。列表是通过使用方括号来定义的[ ],元素之间用逗号分隔 。
例如:
fibs = [0, 1, 1, 2, 3, 5, 8, 13, 21]列表对于组织和存储数据序列非常有用 。
创建列表
列表可以包含不同的数据类型,如字符串、整数、布尔值等 。例如:
mixed_list = [42, "Hello World!", False, 3.14159]操作列表
可以访问、添加、更改和删除列表中的元素 。例如:
# 访问第二个元素(索引从’0’开始)print(mixed_list[1])# 添加元素mixed_list.Append("This is new")# 更改元素mixed_list[0] = 5# 删除第一元素mixed_list.pop(0)列表方法
一些方便的内置列表方法包括:
  • sort()- 就地排序列表
  • append()- 将元素添加到列表末尾
  • insert()- 在索引处插入元素
  • pop()- 删除索引处的元素
  • remove()- 删除第一次出现的值
  • reverse()- 就地反转列表
示例
# 生成列表cart = ["apples", "oranges", "grapes"]# Sort the list cart.sort()# Add new item cart.append("blueberries") # Remove first itemcart.pop(0)print(cart)输出:
['grapes', 'oranges', 'blueberries']第 2 步:理解 Python 中的元组什么是元组?
元组是 Python 中的另一种序列数据类型,类似于列表 。然而,与列表不同,元组是不可变的,这意味着它们的元素一旦创建就不能更改 。它们是通过将元素括在括号中来定义的( ) 。
# Defining a tuplemy_tuple = (1, 2, 3, 4)何时使用元组
元组通常用于不应修改的项目的集合 。元组比列表更快,这使得它们非常适合只读操作 。一些常见的用例包括:
  • 存储常量或配置数据
  • 具有多个组件的函数返回值
  • 字典键,因为它们是可散列的
访问元组元素
【五步让你掌握Python数据结构】访问元组中的元素的方式与访问列表元素类似 。索引和切片的工作方式相同 。
# 访问元组first_element = my_tuple[0]sliced_tuple = my_tuple[1:3]元组操作
由于元组是不可变的,因此许多列表操作(如append()或 )remove()不适用 。但是,仍然可以执行一些操作:
  • 连接:使用+运算符组合元组 。
concatenated_tuple = my_tuple + (5, 6)
  • 重复:使用运算符重复元组* 。
repeated_tuple = my_tuple * 2
  • 成员资格:检查元组中是否存在带有关键字的元素in 。
exists = 1 in my_tuple元组方法鉴于元组的不可变性质,与列表相比,元组的内置方法更少 。一些有用的方法包括:
  • count():计算特定元素的出现次数 。
count_of_ones = my_tuple.count(1)
  • index():查找某个值第一次出现的索引 。
index_of_first_one = my_tuple.index(1)元组打包和解包
元组打包和解包是 Python 中方便的功能:
  • 打包:将多个值分配给单个元组 。
packed_tuple = 1, 2, 3
  • 拆包:将元组元素分配给多个变量 。
a, b, c = packed_tuple


推荐阅读