关注【郑大钱呀】【公】【众】【号】,回复交流群,进群,我们一起交流,一起学习。

Python元组详解

  • 简述
  • 元组的定义
  • 元组的操作
    • 访问元组元素
    • 元组的切片
    • 元组的相关运算符
    • 关于元组的一些简单理解
  • 元组常用方法
  • 结尾

简述

什么是元组,简单的理解就是将一堆数据存放到一个容器中,但这个容器有一个特点,就是很固执,一旦定义了之后就不可改变,从某种意义上来说元组就是不可以改变的列表,功能和列表类似,同样可以进行切片、修改等操作。

元组的定义

元组的定义和列表类似,在括号中添加元素,元素之间使用逗号隔开,代码示例如下:

值得注意的是如果元组中只有一个元素的话,需要在元素的后面加上一个逗号,代码示例如下:

从上面的代码可以看出,如果元组只有一个元素不加逗号话,那么python 并不会认为它是一个元组,这个需要注意一下。元组和列表一样也是可以嵌套的,通过嵌套你可以定义一个二维元组或者多维元组,下面我们定义一个二维元组,并对其进行遍历操作,示例代码如下:

拓展:在Python中任意无符号的对象,以逗号隔开,默认为元组,示例代码如下:

代码解释:按照元组的官方定义,元组应该要放到括号中,列表应该放到中括号中,然后用逗号来分割里面的元素,但是如果你什么符号都不使用,仅仅用逗号分割多个元素,这个时候Python默认你传入的参数类型为元组

元组的操作

访问元组元素

元组的访问和列表一样也是通过索引号来访问的,示例代码如下:

注意索引是从0开始的,所以第二个元素的索引号为1.

元组的切片

当我们想要访问元组中某个范围元素的时候,此时就需要使用到切片的操作,比如我想取元组中第2个到第4个元素,示例代码如下:

元组的索引有两种写法:一种是正向,另一种是反向,如下图:

下面使用反向索引对元组进行切片,代码示例如下:

元组切片的其他操作:

元组的相关运算符

元组可以使用+来对元组进行拼接,使用*来对元组中的元素进行重复,示例代码如下:

不管是“+”操作还是“*”,返回的都是一个新的元组。

关于元组的一些简单理解

我们知道元组是不可修改的,这是它最大的特点,也是和列表的最大的区别,由于元组是不可以修改的,所以使用元组最大的好处就是保证数据安全,一旦数据确定就无法修改其内容,除非你使用del指令将整个元组删除。

元组常用方法

tuple()函数:此函数的作用有两个:(1)可以使用tuple()创建一个空的元组,代码示例如下:

(2)将对应数据类型转换成元组,代码示例如下:

len()函数:返回元组元素长度,简单的说就是这个元组有几个元素,代码示例如下:

max()函数:求元组中元素最大值,示例代码如下:

min()函数:求元组中元素最小值,示例代码如下:

index()函数: 查找元组中某个元素在元组中的位置,如果元素出现多次则返回元素第一次出现的索引,示例代码如下:

index()函数,如果不指定范围,默认是查找整个元组,我们也可以指定范围,语法如下:index(要查找的元素,指定开始位置,指定结束位置),示例代码如下:

值得注意的是index函数指定范围时包括开始的位置,但是不包括结束的位置,除此之外使用index()函数如果没有查找到元素,那么index()函数就会报错,示例代码如下:

count()函数:统计元素出现的次数,示例代码如下:

最后提一下:元组中在Python2 中还要一个cmp()函数,但是在Python3中已经不能使用cmp()函数,已经被移除了,在Python 3中, 使用operator模块来代替Python2的cmp()函数,功能比cmp()函数更加丰富。

结尾

元组和列表章节相似的内容其实太多了,包括一些函数、切片的操作其实大致都一致,记住元组最大的特点的就是不可修改。今天的内容就到这里了,如有不足之处还请大家多多指正,祝大家生活愉快,天天进步,欢迎大家留言、关注、转发加收藏,我们下期见,拜拜。

Python元组详解相关推荐

  1. 【python】什么是序列,Python序列详解

    什么是序列,Python序列详解 概述 序列索引 序列切片 序列相加 序列相乘 检查元素是否包含在序列中 序列相关的内置函数 range 快速初始化数字列表 概述 所谓序列,指的是一块可存放多个值的连 ...

  2. python多线程详解 Python 垃圾回收机制

    文章目录 python多线程详解 一.线程介绍 什么是线程 为什么要使用多线程 总结起来,使用多线程编程具有如下几个优点: 二.线程实现 自定义线程 守护线程 主线程等待子线程结束 多线程共享全局变量 ...

  3. 07 Python数据类型详解

    文章目录 一.整数类型(int)详解 1.1 整数的不同进制 1) 十进制形式 2) 二进制形式 3) 八进制形式 4) 十六进制形式 1.2 数字分隔符 1.3 相关方法 二.字符串类型(strin ...

  4. Python数据类型详解03

    原文博客地址: Python数据类型详解03 第一篇Python数据类型详解01中主要介绍了Python中的一些常用的数据类型的基础知识 第二篇Python数据类型详解02文章中, 详细介绍了数字(N ...

  5. Python|SQL详解之DDL|DML|DQL|DCL|索引|视图、函数和过程|JSON类型|窗口函数|接入MySQL|清屏|正则表达式|executemany|语言基础50课:学习(14)

    文章目录 系列目录 原项目地址 第41课:SQL详解之DDL 建库建表 删除表和修改表 第42课:SQL详解之DML insert操作 delete 操作 update 操作 完整的数据 第43课:S ...

  6. python区块链开发_Fabric区块链Python开发详解

    Hyperledger Fabric是最流行的联盟区块链平台.Fabric区块链Python开发详解课程 涵盖Fabric区块链的核心概念.Fabric网络搭建.Node链码开发.Python应用开发 ...

  7. python装饰器setter_第7.27节 Python案例详解: @property装饰器定义属性访问方法getter、setter、deleter...

    上节详细介绍了利用@property装饰器定义属性的语法,本节通过具体案例来进一步说明. 一.    案例说明 本节的案例是定义Rectangle(长方形)类,为了说明问题,除构造函数外,其他方法都只 ...

  8. 【python】详解类class的继承、__init__初始化、super方法

    原文链接; https://blog.csdn.net/brucewong0516/article/details/79121179?utm_medium=distribute.pc_relevant ...

  9. python与golang_Golang与python线程详解及简单实例

    Golang与python线程详解及简单实例 在GO中,开启15个线程,每个线程把全局变量遍历增加100000次,因此预测结果是 15*100000=1500000. var sum int var ...

  10. python 最小二乘法_最小二乘法及其python实现详解

    最小二乘法Least Square Method,做为分类回归算法的基础,有着悠久的历史(由马里·勒让德于1806年提出).它通过最小化误差的平方和寻找数据的最佳函数匹配.利用最小二乘法可以简便地求得 ...

最新文章

  1. 教程-Win7极速优化20项
  2. 订书机是怎样发明的?
  3. Apache Flink Meetup 8.7 深圳站,企业实践 + 1.14 版本预热
  4. spring boot 配置网关时404错误_Kong中使用grpcweb插件代理grpc服务时遇到的坑
  5. 43次课(限定某个目录禁止解析php、限制user_agent、 php相关配置)
  6. 从代码到300优质客户,用户画像在销售的实战应用
  7. 计量经济学计算机实验报告,综合实训报告范文
  8. 论文阅读笔记——人脸网络:人脸识别和聚类的统一嵌入
  9. code405是什么意思_HTTP协议状态码详解(HTTP Status Code)
  10. python计算天数包含几周_如何在python中计算几周内两个日期之间的差异
  11. 最新最快的HTTP代理服务器,国内外HTTP代理服务器,游戏代理服务器,Q代理服务器,代理IP...
  12. 案例:WLC HA主WLC进入维护模式
  13. 刘彬20000词汇04
  14. Python判断素数(质数)——循换结构、控制及else循环扩展模式的实践
  15. 如何在数字前加上0,如将1变成01
  16. k均值聚类算法考试例题_K-均值法计算示例(示例)
  17. 飞飞php影视系统漏洞,飞飞影视系统PHP版 v1.9 injection exploit漏洞预警 -电脑资料...
  18. 2022 年最新微博签到数据集
  19. 我命由我不由天:程序员保命4招 + 求生10法则
  20. 小白学Java基础案例(一)

热门文章

  1. 安卓连接mysql数据库_Android客户端怎么与服务器数据库连接?
  2. 到底买苹果XS还是XR_iPhone XS和XR买哪个?10个理由告诉你XS更好,贵是有原因的!...
  3. 消费品牌数字营销“终局九问” | 2022全球数字价值峰会
  4. 爬虫练习生|爬虫前奏(爬虫介绍、工具的安装、爬虫分类、爬虫须知)
  5. 一个微信投票小程序防止刷票的想法
  6. CSS outline 属性
  7. SDM439平台出现部分机型SD卡不能识别mmc1: error -110 whilst initialising SD card【学习笔记】...
  8. Tomcat解惑 之 CATALINA_HOME与CATALINA_BASE
  9. 敌兵布阵(HDU - 1166)(线段树的点更新-区间查询)
  10. 免费公网动态IP方案