python中常用的数据结构介绍

yizhihongxing

Python中常用的数据结构介绍

Python是一门高级的编程语言,具有简单而强大的语法,被广泛用于数据科学、机器学习等领域。在Python中,常见的数据结构包括列表、元组、字典、集合等。本文将着重介绍这些数据结构的特点和用法。

列表

Python中的列表(List)是一种有序、可变的集合,可以包含任意类型的数据。它们被定义在方括号 [] 中,由逗号分隔的一系列值组成。

创建列表

# 创建一个空列表
my_list = []

# 创建一个有元素的列表
numbers = [11, 22, 33, 44, 55]
names = ['Alice', 'Bob', 'Charlie']
mixed = [1, 'two', 3.0, [4, 5, 6]]

访问列表元素

可以使用下标运算符 [] 来访问列表中的元素。下标从0开始计数。

numbers = [11, 22, 33, 44, 55]
print(numbers[0])  # 11
print(numbers[2])  # 33

更新列表元素

可以通过下标运算符 [] 更新列表中的元素。

numbers = [11, 22, 33, 44, 55]
numbers[2] = 99
print(numbers)  # [11, 22, 99, 44, 55]

常用列表方法

在Python中,列表还提供了一些常用的方法,比如append()extend()insert()remove()等方法。

fruits = ['apple', 'banana', 'cherry']

# append()方法向列表末尾添加一个元素
fruits.append('orange')
print(fruits)  # ['apple', 'banana', 'cherry', 'orange']

# extend()方法将一个列表中的元素添加到另一个列表中
vegetables = ['carrot', 'broccoli']
fruits.extend(vegetables)
print(fruits)  # ['apple', 'banana', 'cherry', 'orange', 'carrot', 'broccoli']

# insert()方法向列表中指定位置插入一个元素
fruits.insert(2, 'pear')
print(fruits)  # ['apple', 'banana', 'pear', 'cherry', 'orange', 'carrot', 'broccoli']

# remove()方法从列表中移除指定元素
fruits.remove('banana')
print(fruits)  # ['apple', 'pear', 'cherry', 'orange', 'carrot', 'broccoli']

元组

Python中的元组(Tuple)与列表非常相似,但是它们是不可变的,也就是说,一旦创建了元组,就不能修改它的元素。元组用圆括号 () 定义,由逗号分隔的一系列值组成。

创建元组

# 创建一个空元组
my_tuple = ()

# 创建一个有元素的元组
numbers = (11, 22, 33, 44, 55)
names = ('Alice', 'Bob', 'Charlie')
mixed = (1, 'two', 3.0, [4, 5, 6])

访问元组元素

可以使用下标运算符 [] 来访问元组中的元素。下标从0开始计数。

numbers = (11, 22, 33, 44, 55)
print(numbers[0])  # 11
print(numbers[2])  # 33

元组不可变

与列表不同的是,元组的元素不可变。也就是说,不可以向元组中添加元素或者修改元素。

numbers = (11, 22, 33, 44, 55)
numbers[2] = 99
# 报错:TypeError: 'tuple' object does not support item assignment

字典

Python中的字典(Dictionary)是一种键值对(key-value pair)的集合,是一种非常有用的数据结构。字典用大括号 {} 定义,由一系列键值对组成,每个键值对用冒号 ':' 分割。

创建字典

# 创建一个空字典
my_dict = {}

# 创建一个有元素的字典
person = {'name': 'Alice', 'age': 25, 'gender': 'female'}

访问字典元素

可以通过键名来访问字典中的元素。

person = {'name': 'Alice', 'age': 25, 'gender': 'female'}
print(person['name'])  # Alice
print(person['age'])   # 25

更新字典元素

可以通过键名来更新字典中的元素。

person = {'name': 'Alice', 'age': 25, 'gender': 'female'}
person['age'] = 26
print(person)  # {'name': 'Alice', 'age': 26, 'gender': 'female'}

常用字典方法

在Python中,字典还提供了一些常用的方法,比如keys()values()items()等方法。

person = {'name': 'Alice', 'age': 25, 'gender': 'female'}

# keys()方法返回字典中所有的键
print(person.keys())  # dict_keys(['name', 'age', 'gender'])

# values()方法返回字典中所有的值
print(person.values())  # dict_values(['Alice', 25, 'female'])

# items()方法返回字典中所有的键值对
print(person.items())  # dict_items([('name', 'Alice'), ('age', 25), ('gender', 'female')])

集合

Python中的集合(Set)是一种无序、可变的集合,用大括号 {} 或者 set() 函数来定义。集合只包含唯一的元素,重复的元素会被自动去除。

创建集合

# 创建一个空集合
my_set = set()

# 创建一个有元素的集合
numbers = {11, 22, 33, 44, 55}
my_set = set([1, 2, 3, 4, 5])

访问集合元素

集合是无序的,所以不能通过下标来访问集合中的元素。可以使用循环来遍历集合中的元素。

numbers = {11, 22, 33, 44, 55}
for n in numbers:
    print(n)

常用集合方法

在Python中,集合还提供了一些常用的方法,比如add()remove()union()intersection()等方法。

set1 = {1, 2, 3}
set2 = {2, 3, 4}

# add()方法向集合中添加一个元素
set1.add(4)
print(set1)  # {1, 2, 3, 4}

# remove()方法从集合中移除一个元素
set1.remove(4)
print(set1)  # {1, 2, 3}

# union()方法返回两个集合的并集
set3 = set1.union(set2)
print(set3)  # {1, 2, 3, 4}

# intersection()方法返回两个集合的交集
set4 = set1.intersection(set2)
print(set4)  # {2, 3}

以上是Python中常用的数据结构介绍,包括列表、元组、字典、集合等。通过使用它们,可以更加高效地管理和处理数据。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python中常用的数据结构介绍 - Python技术站

(0)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • Python中八大图像特效算法的示例详解

    下面是关于“Python中八大图像特效算法的示例详解”的完整攻略。 1. 八大图像效法简介 图像特效算法是一种用于对图像进行处理的算法,可以使图像更加美观或者增强图像的表现力。在Python中,我们可以使用八大图像特效算法来对图像进行处理。这八大图像特效算法包括:灰度化二值化、反转、镜像、旋转、缩放、模糊和锐化。 2. Python实现八大图像特算法 2.1…

    python 2023年5月13日
    00
  • python实现一般游戏的自动点击具体操作

    要实现游戏的自动点击,需要使用Python的第三方库PyAutoGUI。在使用之前需要先安装它。可以通过以下命令在命令行中安装: pip install pyautogui 接下来,可以按照以下步骤在Python中实现自动点击。 导入PyAutoGUI库 首先需要在Python脚本中导入PyAutoGUI库,从而使用它提供的函数。 import pyauto…

    python 2023年5月19日
    00
  • python利用有道翻译实现”语言翻译器”的功能实例

    下面是Python利用有道翻译实现“语言翻译器”的完整攻略: 1.准备工作 首先需要在“有道智云”网站上申请API Key,获取APP ID和API Key用于在程序中调用翻译功能。 2.安装相关库 Python中使用requests库进行网络请求,使用json库对返回内容进行解析,可以使用以下命令进行安装: pip install requests 3.编…

    python 2023年6月3日
    00
  • 利用Python找回微信撤回信息

    下面是“利用Python找回微信撤回信息”的完整攻略: 前言 当我们在微信聊天过程中,发现信息被对方撤回了,如果你想找回这条消息,那么可以使用Python进行实现。 基本思路 使用itchat库进行微信登录; 接收到信息并打印在控制台上,同时保存在一个字典中; 监听撤回信息事件,找到该信息后将该条信息删除,并将被撤回的信息发送给自己。 具体实现 步骤一:登录…

    python 2023年5月19日
    00
  • Python实现将文本生成二维码的方法示例

    下面我将详细讲解“Python实现将文本生成二维码的方法示例”的完整攻略,包含以下内容: 安装必要的库 在Python中实现二维码生成需要借助第三方库,因此需要先安装这些库,包括qrcode和Pillow。其中qrcode用于生成二维码,而Pillow用于处理图片。 !pip install qrcode !pip install Pillow 编写生成二维…

    python 2023年5月20日
    00
  • Python的Tkinter点击按钮触发事件的例子

    下面是Python的Tkinter点击按钮触发事件的例子的详细攻略,包含了两个示例: 1. 创建Tkinter窗口 首先,我们需要创建一个Tkinter窗口,用来承载其他组件。 import tkinter as tk # 创建窗口对象 window = tk.Tk() # 设置窗口标题 window.title("My GUI") # …

    python 2023年6月13日
    00
  • 使用LRU加速python应用

    操作系统 :CentOS 7.6.1810_x64 Python 版本 : 3.9.12 一、背景描述 使用python开发过程中,会遇到需要使用缓存加速应用的情况,比如下面这些场景: 数据转换加速 字符串时间转换成int时间戳; 字符串时间转换成datetime类型; … 数据解析加速 bytes数据转换为int(数据包解析场景的端口、序列号等); b…

    2023年4月8日
    00
  • python字典的遍历3种方法详解

    当我们使用Python编程时,经常会涉及到遍历一个字典的所有键值对。Python提供了多种遍历字典的方法,接下来将介绍三种最常用的遍历字典的方法。 方法一:使用items()方法遍历字典 Python中的字典有一个方法,叫做items()。items()方法返回一个包含(key, value)元组的列表。我们可以对这个列表进行遍历,从而遍历字典中的键值对。 …

    python 2023年5月13日
    00
合作推广
合作推广
分享本页
返回顶部