首页 > 编程语言 >Python常用数据结构

Python常用数据结构

时间:2024-10-31 20:48:52浏览次数:3  
标签:常用 set Python 列表 dict fruits print 数据结构 my

1. 列表(List)

列表是 Python 中最灵活的数据结构之一,像个能装万物的大箱子。你可以把任何类型的对象放进来,甚至可以把列表放进列表里,真是个魔法箱!

功能特性:

  • 可变:你可以随时增加、删除、修改列表中的元素。
  • 有序:元素按插入顺序排列

创建和基本操作:

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

# 创建一个包含几个元素的列表
fruits = ['苹果', '香蕉', '橙子']
print("我的水果列表:", fruits)

# 添加元素
fruits.append('草莓')  # 向列表末尾添加草莓
print("添加草莓后的列表:", fruits)

# 索引访问
print("第一个水果是:", fruits[0])  # 列表索引从0开始

# 修改元素
fruits[1] = '蓝莓'  # 把香蕉改成蓝莓
print("修改后的列表:", fruits)

# 删除元素
fruits.remove('橙子')  # 删除橙子
print("删除橙子后的列表:", fruits)

2. 元组(Tuple)

元组是一个“听话”的数据结构,一旦你给它定义好,它就不允许你再修改。就像是一个刚刚请客的朋友,谁都不能要求他再多加一份。

功能特性:

  • 不可变:元组一旦创建就不能更改。
  • 有序:元素按插入顺序排列。

基本使用

# 创建元组
my_tuple = ('猫', '狗', '鱼')
print("我的宠物元组:", my_tuple)

# 索引访问
print("我的第一个宠物是:", my_tuple[0])

# 尝试修改会报错
# my_tuple[1] = '鸟'  # Uncomment this line and watch the error!

3. 字典(Dict)

字典就像一本神奇的字典书,里面的每一个条目都有“词条”和“定义”。通过“词条”你可以快速找到对应的“定义”。

功能特性:

  • 存储键值对:每个元素都有唯一的键(key)和对应的值(value)。
  • 无序:字典是无序的,插入顺序可能不会保持。

基本使用:

# 创建字典
my_dict = {
    '姓名': '小明',
    '年龄': 18,
    '爱好': ['打篮球', '看电影']
}
print("我的字典:", my_dict)

# 访问值
print("我的姓名是:", my_dict['姓名'])

# 修改值
my_dict['年龄'] = 19
print("修改后的字典:", my_dict)

# 添加新键值对
my_dict['城市'] = '北京'
print("添加城市后的字典:", my_dict)

# 删除键值对
del my_dict['爱好']
print("删除爱好后的字典:", my_dict)

4. 集合(Set)

集合就像是一个特别的派对,谁都不能带重复的朋友来。它自动帮你过滤掉重复的元素,简直是个完美的聚会组织者!

功能特性:

  • 无序:集合中的元素没有固定的顺序。
  • 唯一:集合不允许重复的元素。

基本使用

# 创建集合
my_set = {1, 2, 3, 4, 4}  # 注意4只会出现一次
print("我的集合:", my_set)

# 添加元素
my_set.add(5)
print("添加5后的集合:", my_set)

# 删除元素
my_set.remove(2)
print("删除2后的集合:", my_set)

# 集合运算
another_set = {3, 4, 5, 6}
union_set = my_set.union(another_set)  # 并集
print("并集:", union_set)

总结

这些数据结构就像工具箱中的工具,各有各的用途。在实际编程中,根据需求灵活选择,能让你的代码既简洁又高效。希望这些解释和代码示例能让你轻松上手,乐在其中!掌握这些数据结构可以帮助你更高效地解决问题。在 Python 编程中,合理选择数据结构能提升代码的可读性和性能。每种数据结构都有其独特的魅力和应用场景,理解这些特点,你将能在编程的旅途中游刃有余。

标签:常用,set,Python,列表,dict,fruits,print,数据结构,my
From: https://blog.csdn.net/qq_36070104/article/details/143417166

相关文章

  • 华为OD机试-(E卷,100分) - 补种未成活胡杨(Java & Python& JS & C++ & C )
    最新华为OD机试题目描述近些年来,我国防沙治沙取得显著成果。某沙漠新种植N棵胡杨(编号1-N),排成一排。一个月后,有M棵胡杨未能成活。现可补种胡杨K棵,请问如何补种(只能补种,不能新种),可以得到最多的连续胡杨树?输入描述N总种植数量,1<=N<=100000M未成活胡杨数量,M个空格......
  • 洛谷Python顺序结构题解合集
    P5705【深基2.例7】数字反转a=s[0]b=s[1]c=s[2]d=s[4]print(f"{d}.{c}{b}{a}")P5706【深基2.例8】再分肥宅水ans=float(a[0])/int(a[1])beizi=2*int(a[1])print(f"{ans:.3f}\n{beizi}")P5708【深基2.习2】三角形面积p=0.5*(a+b+c)ans=pow((p*(p-a)*(p-b)*(p-c)),0.5......
  • 基于Python+Vue开发的美容预约管理系统
    项目简介该项目是基于Python+Vue开发的美容预约管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的美容诊所预约管理系统项目,大学生可以在实践中学习和......
  • 基于Python+Vue开发的房产销售管理系统
    项目简介该项目是基于Python+Vue开发的房产销售管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的房产销售管理系统项目,大学生可以在实践中学习和提升......
  • python+flask计算机毕业设计共享汽车租赁系统的设计与实现(程序+开题+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景关于共享汽车租赁系统的研究,现有研究多侧重于传统汽车租赁业务的数字化转型,主要以提升租车流程的效率和便捷性为主。专门针对共享汽车......
  • python selenium 操作唯品会
    fromseleniumimportwebdriverimporttimefromselenium.webdriver.chrome.serviceimportServicefromselenium.webdriver.common.byimportByservice=Service(executable_path="D:\\chromedriver.exe")chrome_options=webdriver.ChromeOptions()......
  • 常用算法模板
    数论组合数方法1(小数据)数据范围\(1\leqn\leq10000\),\(1\leqb\leqa\leq2000\)说明通过递推预处理组合数公式\(C^{b}_{a}=C^{b}_{a-1}+C^{b-1}_{a-1}\)LLC[N][N];voidinit(){for(inti=0;i<N;i++){for(intj=0;j<=......
  • Python 函数装饰器
    装饰器(Decorators)是Python的一个重要部分。简单地说:他们是修改其他函数的功能的函数。他们有助于让我们的代码更简短,也更Pythonic(Python范儿)。大多数初学者不知道在哪儿使用它们,所以我将要分享下,哪些区域里装饰器可以让你的代码更简洁。首先,简单举个例子:函数参数传递:imp......
  • git常用命令
    git常用命令一、获取日志并回退到历史版本1.获取历史日志gitreflog2.回退到历史版本gitreset--hardHEAD@{n}HEAD@{n}其中一个历史版本号(n越大,历史版本越早)如HEAD@{2}表示HEAD指针在两次移动之前的情况;3.删除初始化文件(慎用)rm-rf.git二、git上传代码......
  • Python学习的自我理解和想法(24)
    学的是b站的课程(千锋教育),跟老师写程序,不是自创的代码!今天是学Python的第24天,学的内容是python对Excel的操作。开学了,时间不多,写得不详细,见谅。目录1.插件介绍2.安装openpyxl3.读取Excel文件内容(1).加载一个工作簿(2).获取工作表名称(3).获取具体的工作表(4).获......