当前位置: 首页 > news >正文

【Python数据结构与判断7/7】数据结构小结

目录

序言

整体回忆

定义方式

访问元素

访问单个元素

访问多个与元素

修改元素

添加元素

列表里添加元素

字典里添加元素

删除元素

in运算符

实战案例

总结


序言

        今天将对前面学过的三种数据结构:元组(tuple)、列表(list)和字典(dict),进行一个复习小结。

整体回忆

        先来整体回忆一下这三种数据结构的基本概念~

        元组能存储多个不同类型的数据,且是有序的。但它是不可变的,因此不能进行修改、删除或添加元素的操作。

        列表和元组非常相似,唯一的不同是列表的元素是可以修改的。

        字典的元素以键值对(key-value)的形式保存,是无序的。和列表一样,字典可以修改。

定义方式

        定义元组、列表和字典的方式如图所示,分别使用小括号 () 、方括号 [] 和花括号 {} 
三种数据结构的每一项元素都是由逗号分隔开

访问元素

访问单个元素

        元组和列表使用索引来访问某一个位置的元素。字典通过来查找对应的值。

访问多个与元素

        对于元组和列表来说,除了访问单个元素外,还可以使用切片来截取多个连续的元素。切片需要使用冒号来分隔切片开始的位置和切片终止的位置。
        同时,遵循“左闭右开”原则,就是取左边的数据,不取右边的数据。

        切片时,开始位置和结束位置的数字,还有三种填写情况:
1. 只填写结束位置的数字:默认从第一个元素开始切片。
2. 只填写开始位置的数字:默认从开始位置切片,取到最后一个元素。
3. 两侧数字都不填写:取列表中的所有元素。

修改元素

        对列表和字典进行修改,可以使用列表的索引或字典的键,访问到需要修改的元素后,直接重新赋值即可。

添加元素

列表里添加元素

        往列表里添加内容有两种方式:
1. 如果想在列表的末尾增加一个元素,可以使用 append() 语句,将想要追加的内容放入append() 语句的括号内即可。

2. 如果想在列表的任意位置添加元素,则可以使用 insert() 语句,需要依次传入:插入的元素位置和要插入的元素。

字典里添加元素

        对于字典,添加新元素的方式是直接指定一个新的键,然后对它进行赋值。
        示例中,先通过重新赋值更改了"Gary"键所对应的值,再指定一个新的键"Qian",通过赋值将它对应的值设置为18。

删除元素

        从列表中删除一个元素时,我们使用pop()功能,通过这个元素的索引,来进行删除。
在字典中,依旧使用pop()功能,通过这个元素的键,来进行删除。

in运算符

        想要快速判断列表或者元组中是否有某一个元素,可以使用in运算符。in运算符的左边是要查找的元素,右边是定义的元组或列表。in运算的结果,是一个布尔值(True/False)。

        同样,当我们不知道字典有哪些键的时候,也可以通过in运算来检查字典是否包含某个键。

实战案例

实战案例:修改密码

        在修改密码的时候,经常会出现新设置的密码与从前的密码一致,系统自动识别出来,无法予以更改。
        这个机制其实通过列表就可以实现:
将每一次设置的密码都存入到一个列表password中,重新设置密码"yequ8888"时,通过if...else...语句以及in运算符判断"yequ8888"否存在于列表中。
        如果存在,则无法修改密码,使用print()输出:"密码修改失败"。
        如果不存在列表中,则可以修改密码,使用print()输出:"密码修改成功",并将"chestnut8888"追加到列表里。
        在最后,通过print()输出列表password。

参考代码:

# 定义一个列表password
password = ["python666", "codingisFun", "chestnut123", "789goPython", "BugAndDebug", "runtimeError"]# 新密码newPassword
newPassword = "chestnut8888"# TODO 根据题目,完成剩下的代码
if newPassword in password:print("密码修改失败")
else:print("密码修改成功")password.append("chestnut8888")
print(password)

运行结果:

总结

        今天,我们从以下几个方面复习了元组(tuple)、列表(list)和字典(dict):
1. 定义方式
2. 访问元素
3. 修改元素
4. 添加元素
5. 删除元素

http://www.lryc.cn/news/318072.html

相关文章:

  • 探讨:MySQL和PostgreSQL谁更火
  • hbase和es的选取 hbase与es结合
  • GoLang:云原生时代致力于构建高性能服务器的后端语言
  • 高频面试必备(Java研发岗),一线互联网架构师设计思想解读开源框架
  • React——react 的基本使用
  • Unity资源热更新----AssetBundle
  • bootstrap企业网站前端模板
  • 分类预测 | Matlab实现GSWOA-KELM混合策略改进的鲸鱼优化算法优化核极限学习机的数据分类预测
  • 软考77-上午题-【面向对象技术3-设计模式】-创建型设计模式02
  • 微博热搜榜单采集,微博热搜榜单爬虫,微博热搜榜单解析,完整代码(话题榜+热搜榜+文娱榜和要闻榜)
  • 有趣的前端知识(三)
  • How to install teams in ubuntu
  • macOS14.4安装FFmpeg及编译FFmpeg源码
  • 基于Springboot+vue+mybatis框架的建材运营管理系统的设计与实现【附项目源码】分享
  • 前端路由跳转bug
  • 二 centos 7.9 磁盘挂载
  • 二叉搜索树、B-树、B+树
  • Docker简介与安装
  • Swift 单元测试
  • 有来团队后台项目-解析10
  • 【自动化】在C#中创建和配置串口对象SerialPort
  • 突破编程_C++_设计模式(访问者模式)
  • C语言入门到精通之练习53:矩阵交换行问题(附带源码)
  • Python白练-2统计下列5行字符串中字符出现的频数
  • 深入理解DHCP服务:网络地址的自动化分配
  • Java高级编程—泛型
  • Exam in MAC [容斥]
  • Java 学习和实践笔记(36):接口(interface)
  • Elastic Stack--10--QueryBuilders UpdateQuery
  • 腾讯云服务器CVM_云主机_云计算服务器_弹性云服务器