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

Python从入门到高手8.3节-元组的常用操作方法

目录

11.3.1 元组的常用操作方法

11.3.2 元组的查找

 11.3.3 祈祷明天不再打雷下雨


11.3.1 元组的常用操作方法

元组类型是一种抽象数据类型,抽象数据类型定义了数据类型的操作方法,在本节的内容中,着重介绍元组类型的操作方法。

image.png

元组是一种不可变的数据类型,不可以对元组执行修改,添加等操作。在元组中提供的方法主要是对元素进行查找。

对元组执行切片,加法等操作,返回的是一个新的元组,并没有对元组进行修改。

11.3.2 元组的查找

(1) tuple.index(value, start=0, stop=2147483647)

函数说明

查找元素value在元组中的索引。start表示查找的起始位置,stop表示查找的结束位置(闭区间,不包括stop)。start的默认值为0,stop的默认值为2147483647。

元素不存在时会抛出异常,在执行index方法时,可以先用in操作符判断元素是否在元组中。

代码实例:

# __desc__ = 执行index方法来查找元素的索引stars = ("王祖贤""李嘉欣""陈法蓉")
index = stars.index("王祖贤"# index的输出为0index = stars.index("吴君如"# 执行上文的代码时抛出异常
# 可以先执行in操作符来进行判断if "吴君如" in stars:index = stars.index("吴君如"# 像这类型的简单条件判断,可以使用三目运算符
index = stars.index("吴君如"if "吴君如" in stars else -1

通过循环结构来实现index方法的功能:

# __desc__ = 在循环中进行元素值匹配,并记录当前的索引位置stars = ("王祖贤""李嘉欣""陈法蓉")
star = "王大拿"# 定义index变量来保存元素的索引,初始值为0
# 同学们可以思考下,为什么初始值设置为0,而不是其它的数字
index = 0for star_ in stars:if star == star_:breakindex += 1
else:# 如果循环正常退出,说明元素不存在index = -1

(2) tuple.count(value)

函数说明:

查找查找元素值value在列表中的数目,元素值value不存在时,返回0。

代码实例:

# __desc__ = 执行count方法来查找元素的数目stars = ("王祖贤""李嘉欣""陈法蓉")
count = stars.count("王祖贤"# count的输出为1count = stars.count("吴君如"# count 的输出为0

同样可以通过循环结构来实现元组类型count方法的功能:

# __desc__ = 在循环中进行元素值匹配# 在stars中,包含王祖贤的两个替身
stars = ("王祖贤""李嘉欣""陈法蓉""王祖贤""王祖贤")
star = "王祖贤"# 定义count变量来保存元素的数目,初始值为0
count = 0for star_ in stars:if star == star_:# 如果相等,则对count加一count += 1
else:print(count)

迄今为止,我们是在循环结构中通过遍历的方式来进行元素查找,在数据量大的情况下,查找的效率会很低下。在介绍函数处理时,会讲解如何通过二分查找来提高数据的查找效率。

博主正在CSDN写一套Python高级爬虫+JS逆向+安卓逆向的教程:

高级爬虫+安卓逆向,手把手教你成为一流的爬虫高手https://blog.csdn.net/thereisadownloader/category_12930002.html

 11.3.3 祈祷明天不再打雷下雨

跟薯条老师学高级爬虫(JS逆向+安卓逆向),数据分析,大数据开发,金融量化交易,以及机器学习+深度学习算法。坚定自己的学习目标,保持学习的热情,那你成为高手只是时间问题。

薯条老师的学生在南方电网,林氏家居,京东,阿里等大厂。想系统学习Python和Java的同学,可以移步薯条老师的个人技术博客:薯条老师的个人技术博客http://www.chipscoco.com/ 对本节教程有任何不懂的同学,亦可在评论区中进行评论。薯条老师会详细解答你们提出的每一个问题。

http://www.dtcms.com/a/178941.html

相关文章:

  • Spark存储级别
  • 系统架构设计-真题2024下半年总结
  • Android不能下载Gradle,解决方法Could not install Gradle distribution from.......
  • 第T11周:优化器对比实验
  • Windows环境下MySQL Installer安装后执行`mysql`和`mysql -v`报错的问题解决方法
  • Centos离线安装mysql、redis、nginx等工具缺乏层层依赖的解决方案
  • BUCK-BOOST调试常见问题总结
  • BUUCTF——杂项渗透之1和0的故事
  • 04-redis
  • 今日行情明日机会——20250508
  • 让大模型涌现“连续性人格”
  • Oracle 19c中的私有临时表
  • android ViewModel liveData无法监听之多线程下activityViewModels不安全
  • mysql数据库体验
  • 趣味编程:答案之书
  • viewDesign里的table内嵌套select动态添加表格行绑定内容丢失
  • string[字符串中第一个的唯一字符][蓝桥杯]
  • Matlab 车辆四自由度垂向模型平稳性
  • 基于C#的CAN总线通信开发指南
  • 在Postman中高效生成测试接口:从API文档到可执行测试的完整指南
  • windows的rancherDesktop修改镜像源
  • 算法训练营第十一天|150. 逆波兰表达式求值、239. 滑动窗口最大值、347.前 K 个高频元素
  • 安卓应用卡顿、性能低下的背后原因
  • goner/otel 在Gone框架接入OpenTelemetry
  • stable-diffusion windows本地部署
  • Spring AI 集成 DeepSeek V3 模型开发指南
  • 【C++】C++函数指针详解与实用技巧
  • 小白借助ai对全栈进行浅浅理解(学习笔记)-Lambda、Optional 避免空指针与新的日期时间 API
  • 南邮计科电工电子实验第五次课与非门设计数字锁逻辑电路小测答案
  • 线程池的核心参数和线程创建方式,线程和进程