Python入门教程+项目实战-11.3节: 元组的操作方法

这篇具有很好参考价值的文章主要介绍了Python入门教程+项目实战-11.3节: 元组的操作方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

11.3.1 元组的常用操作方法

11.3.2 元组的查找

11.3.3 知识要点

11.3.4 系统学习python


11.3.1 元组的常用操作方法

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

Python入门教程+项目实战-11.3节: 元组的操作方法

元组是一种不可变的数据类型,不可以元组执行修改等操作,在元组中提供的方法主要是对元素进行查找。列表是一种可变的数据类型,可以通过操作符[]对列表中的元素进行修改,在11.4节中会详细介绍元组与列表的区别。

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

11.3.2 元组的查找

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

函数说明

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

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

代码实例:

Python

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

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

Python

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

(2) tuple.count(value)

函数说明:

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

代码实例:

Python

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

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

Python

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

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

11.3.3 知识要点

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

(2) 列表是一种动态的数据类型,可以通过操作符[]对列表中的元素进行修改

11.3.4 系统学习python

薯条老师简介:资深技术专家,技术作家,著有《Python零基础入门指南》,《Java零基础入门指南》等技术教程。薯条老师的博客:http://www.chipscoco.com, 系统学习后端,爬虫,数据分析,机器学习、量化投资。文章来源地址https://www.toymoban.com/news/detail-426268.html

到了这里,关于Python入门教程+项目实战-11.3节: 元组的操作方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python入门教程+项目实战-14.1节-函数的参数用法

    目录 14.2.1 位置参数与参数 14.2.2 函数的参数默认值 14.2.3 函数的引用类型参数 14.2.4 函数的可变参数 14.2.5 知识要点 14.2.6 系统学习python 位置参数与参数的位置相关,这里的位置是指定义函数时的从左到右的参数排列顺序。在调用函数时,会自动将实参与形参的位置对

    2024年02月11日
    浏览(56)
  • 全网最全Pytest框架使用教程和项目实战~从入门到精通

    pytest是一个非常成熟的python单元测试框架,比unittest更灵活、更容易上手 pytest可以和selenium、requests、appinum结合实现web自动化、接口自动化、app自动化 pytest可以是实现测试用例的跳过以及reruns失败用例重试 pytest可以和aliure生成非常美观的测试报告 pytest可以和jenkins持续集成

    2024年02月06日
    浏览(47)
  • 【Android入门到项目实战-- 9.5】—— 陀螺仪传感器的详细使用教程

    目录 陀螺仪传感器 1、基础知识  2、实战使用         返回x、y、z轴的角加速度数据。         水平逆时针旋转,z轴为正,顺时针为负;         向左旋转,y轴为负,向右旋转,y为正;         向上旋转,x为负,向下旋转,x为正。 修改activity_main.xml代码如下:

    2024年02月12日
    浏览(54)
  • CMake入门教程【实战篇】使用开源库cmake-modules简化项目开发与维护

    本教程介绍了rpavlik/cmake-modules,一个CMake模块集合,旨在简化和优化CMakeLists.txt文件的编写和维护工作。该集合尤其对虚拟现实和物理模拟包的开发者有用,同时也包含通用实用模块和针对旧版CMake的补丁或解决方案。 项目托管在GitHub上,可通过链接访问:rpavlik/cmake-modules 查

    2024年01月15日
    浏览(50)
  • python pytorch教程-带你从入门到实战(代码全部可运行)

    其实这个教程以前博主写过一次,不过,这回再写一次,打算内容写的多一点,由浅入深,然后加入一些实践案例。 下面是我们的内容目录: 1.先从数据类型谈起 1.1 如何生成pytorch的各种数据类型? 1.2 pytorch的各种数据类型有哪些属性? 1.3 pytorch的各种数据类型有哪些函数操

    2024年02月13日
    浏览(45)
  • 从零开始的Django框架入门到实战教程(内含实战实例) - 01 创建项目与app、加入静态文件、模板语法介绍(学习笔记)

      Django是目前比较火爆的框架,之前有在知乎刷到,很多毕业生进入大厂实习后因为不会git和Django框架3天就被踢掉了,因为他们很难把自己的工作融入到整个组的工作中。因此,我尝试自学Django并整理出如下笔记。   在这部分,我将从Django的安装讲起,从创建项目到制

    2024年02月09日
    浏览(72)
  • 《黑马程序员2023新版黑马程序员大数据入门到实战教程,大数据开发必会的Hadoop、Hive,云平台实战项目》学习笔记总目录

    本文是对《黑马程序员新版大数据入门到实战教程》所有知识点的笔记进行总结分类。 学习视频:黑马程序员新版大数据 学习时总结的学习笔记以及思维导图会在后续更新,请敬请期待。 前言:配置三台虚拟机,为集群做准备(该篇章请到原视频进行观看,不在文章内详细

    2024年02月03日
    浏览(70)
  • javaEE -11(10000字HTML入门级教程)

    C/S架构是指客户端和服务器之间通过网络通信进行交互的架构模式,而B/S架构是指通过浏览器与服务器进行交互的架构模式。 C/S架构,特点:需要安装、偶尔更新、不跨平台、开发更具针对性。 B/S架构,特点:无需安装、无需更新、可跨平台、开发更具通用性。 C = client(客

    2024年02月06日
    浏览(46)
  • Arduino入门系列之《DHT11使用教程》

    本教程将向您展示如何将 DHT11 与 Arduino 结合使用。 HT11 温湿度传感器(3 针) 1个             Arduino UNO 1个 DHT

    2024年02月08日
    浏览(42)
  • ESP8266入门教程11:连接MQTT服务器

    将第三方库PubSubClient下载到lib文件夹 git clone https://github.com/knolleary/pubsubclient.git 1、打开阿里云IOT官网,登录阿里云账号 https://iot.console.aliyun.com 2、创建实例 3、新建产品 4、自定义主题  5、添加设备  6、查看设备配置   1、修改PubSubClient.h头文件,否则无法连接阿里云MQTT服务

    2023年04月24日
    浏览(60)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包