Python——元组

一、元组特性介绍

  •         元组和列表⼀样,也是⼀种序列类型的数据。
  •         唯⼀的不同是,元组是相对不可变的。

二、⾼效创建元组

In [1]: t1 = ()    # 创建 空 元素的元组In [2]: type(t1)
Out[2]: tuple

        有元素的元组实际上是使⽤英⽂的逗号创建的

In [3]: n = (3)In [4]: n
Out[4]: 3In [5]: type(n)
Out[5]: intIn [6]: t = 3,In [7]: t
Out[7]: (3,)In [8]: type(t)
Out[8]: tuple

 

        创建⾮空元素的元组是⽤逗号 ,⽽不是⽤⼩括号 

 三、转换

        tuple() 可以对其他序列类型的数据转换为元组。

In [9]: s1 = 'car'In [10]: s1
Out[10]: 'car'In [11]: list(s1)
Out[11]: ['c', 'a', 'r']In [12]: tuple(s1)
Out[12]: ('c', 'a', 'r')In [13]: t2 = tuple(s1)In [14]: t2
Out[14]: ('c', 'a', 'r')In [15]: tuple([1,2,3])
Out[15]: (1, 2, 3)

 

四、元组的取值

        元组也是序列类型的数据,取值和切⽚和列表的操作⼀样

In [20]: t1 = (1,2,3, ['a','b'],'liang')In [21]: t1
Out[21]: (1, 2, 3, ['a', 'b'], 'liang')In [22]: t1[-1]
Out[22]: 'liang'In [23]: t1[-2]
Out[23]: ['a', 'b']In [24]: t1[-2][-1]
Out[24]: 'b'In [25]: t1[1:-1]
Out[25]: (2, 3, ['a', 'b'])In [26]: t1[3:-4]
Out[26]: ()In [27]: t1[3:4]
Out[27]: (['a', 'b'],)

 

五、元组的⽅法

        count 统计⼀个元素在元组内出现的次数

        index 返回⼀个元素在元组内的索引

In [20]: t1 = (1,2,3, ['a','b'],'liang')In [28]: t1.             # 按 Tab 键count() index()     # 可以看出没有可以改变其⾃身的⽅法In [28]: t1.count(1)
Out[28]: 1In [29]: t1.count(10)
Out[29]: 0In [30]: t1.index(1)
Out[30]: 0In [31]: t1.index(3)
Out[31]: 2

 

六、元组的相对不可变

        元组本身是不可变的,就是元组内的元素是不可变的,⼀旦创建⼀个元组,这个元组内的元素个数和数据都是固定的了 相对不可变的意思是,元组内的元素⾃身是可变的数据对象,就可以通过修改这个可变元素,来间接改变元组的样⼦。

        内置函数 id() , 这个函数可以返回python 中⼀个对象的内存地址(id 号)

In [32]: id('hello')
Out[32]: 140096984653232In [33]: t1
Out[33]: (1, 2, 3, ['a', 'b'], 'liang')In [34]: id(t1)
Out[34]: 140097075906512

        接下来就来验证元组是相对不可变的

        假设我想把上个示例中的元组 t1 中列表元素‘b’删除

In [35]: t1[-2]
Out[35]: ['a', 'b']In [36]: id(t1[-2])        # 改变前的 id
Out[36]: 140097076313776In [37]: t1[-2]
Out[37]: ['a', 'b']In [39]: t1[-2].pop()
Out[39]: 'b'In [40]: t1
Out[40]: (1, 2, 3, ['a'], 'liang')In [41]: id(t1[-2])        # 改变后的 id
Out[41]: 140097076313776

 

七、for 循环元组

In [43]: t = ('liang',1314,521)In [44]: for i in t:...:     print(i)...: 
#结果
liang
1314
521In [45]: 

 

八、元组的优点

  •         占⽤内存空间⼩
  •         元组内的值不会被意外的修改
  •         可作为字典的键
  •         函数的参数是以元组形式传递的

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/690709.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【sgCreateTableColumn】自定义小工具:敏捷开发→自动化生成表格列html代码(表格列生成工具)[基于el-table-column]

源码 <template><!-- 前往https://blog.csdn.net/qq_37860634/article/details/136126479 查看使用说明 --><div :class"$options.name"><div class"sg-head">表格列生成工具</div><div class"sg-container"…

RSA加密,解密,加签及验签

目录 1.说明 2.加密和加签的区别 3.后端加密&#xff0c;解密&#xff0c;加签及验签示例 4.前端加密&#xff0c;解密&#xff0c;加签及验签示例 5.前端加密&#xff0c;后端解密&#xff0c;前端加签&#xff0c;后端验签 6.注意事项 1.说明 RSA算法是一种非对称加密…

【JavaScript】输入输出语法

目录 一、输出语法 二、输入语法 一、输出语法 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>D…

HCIA-HarmonyOS设备开发认证V2.0-IOT硬件子系统-I2C

目录 一、 I2C 概述二、I2C 模块相关API三、接口调用实例四、I2C HDF驱动开发4.1、开发步骤(待续...) 坚持就有收获 一、 I2C 概述 I2C&#xff08;Inter Integrated Circuit&#xff09;集成电路间总线是由 Philips 公司开发的一种简单、双向二线制同步串行总线。I2C 以主从方…

面试题:链表相交

链表相交 给你两个单链表的头节点 headA 和 headB &#xff0c;请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点&#xff0c;返回 null 。 图示两个链表在节点 c1 开始相交&#xff1a; 思路 这个题目有2个思路&#xff0c;我先说容易想到的思路 对齐链表…

有关光猫、路由器、交换机、网关的理解

前提 在了解计算机网络的过程中&#xff0c;出现了这四个名词&#xff1a;光猫、路由器、交换机、网络。有点模糊&#xff0c;查阅互联网相关资料&#xff0c;进行整理。如有错误&#xff0c;欢迎大家批评指正。 光猫 首先光猫是物理存在的&#xff0c;大家在家里应该都可以…

探索与实践:深度解读禅道项目管理工具的高效运用

【引言】 在日益复杂的现代项目管理领域中&#xff0c;一款优秀的项目管理工具能够极大地提升团队协作效率&#xff0c;降低项目风险&#xff0c;而禅道正是这样一款深受开发者和项目经理喜爱的产品。它是一款基于敏捷开发理念设计的开源项目管理软件&#xff0c;涵盖了产品管…

5G网络RedCap

RedCap&#xff1a;RedCap&#xff08;Reduced Capability&#xff09;&#xff0c;即“降低能力”。它是3GPP在5G R17阶段&#xff0c;针对速率、时延要求不高的5G应用场景&#xff0c;专门推出的一种新技术标准协议&#xff0c;旨在全面提升5G网络质量和覆盖率&#xff0c;也…

H12-821_62

62.如图所示,RTA、RTB、RTC、RTD在同一个AS内,通过直连链路建立IBGP邻居关系,RTB、RTC为路由反射器,RTA与RTC为RTB的路由反射器客户端,RTB与RTD为RTC的路由反射器客户端,RTA上将10.1.1.0/24宣告进BGP中,则RTD上收到的BGP路由更新其Originator ID值为() 答案&#xff1a;1.1.1.1…

PostgreSQL教程(三):SQL语言

一、引言 本章提供了一个如何使用SQL执行简单操作的概述。本教程的目的只是给你一个介绍。有许多关于SQL的书籍&#xff0c;包括[melt93]和[date97]。你还要知道有些PostgreSQL语言特性是对标准的扩展。 在随后的例子里&#xff0c;我们假设你已经创建了名为mydb的数据库&…

第24讲投票管理实现

投票管理实现 后端&#xff1a; package com.java1234.controller;import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.java1234.entity.*; import com.java1234.service.…

数据结构之线性表插入与删除运算

线性表 线性表的定义 线性表&#xff0c;或称表&#xff0c;是一种非常灵便的结构&#xff0c;可以根据需要改变表的长度&#xff0c;也可以在表中任何位置对元素进行访问、插入或删除等操作。另外&#xff0c;还可以将多个表连接成一个表&#xff0c;或把一个表拆分成多个表…

IO进程线程day3作业

1、使用 fread 和 fwrite 完成文件拷贝 代码&#xff1a; #include<myhead.h> int main(int argc, const char *argv[]) {//判断终端输入if(argc!3){printf("inputs file error\n");printf("usage:./a.out srcfile destfile\n");return -1;}//定义…

【C->Cpp】由C迈向Cpp(3)

正文开始&#xff1a; 目录 &#xff08;一&#xff09;函数重载 &#xff08;1&#xff09;函数重载 &#xff08;2&#xff09;函数重载实现原理 &#xff08;二&#xff09; 引用 &#xff08;1&#xff09;引用 &#xff08;2&#xff09;语法 i &#xff0c;别名&am…

使用openeuler 22.03替代CentOS 7.9,建立虚拟机详细步骤

进入浏览器搜索网址下载openeuler 22.03镜像文件 https://mirrors.huaweicloud.com/openeuler/openEuler-22.03-LTS-SP3/ISO/x86_64/openEuler-22.03-LTS-SP3-x86_64-dvd.iso 打开VMware Workstation新建一个虚拟机&#xff1a; 自定义虚拟机位置 加入下载好的openeuler镜像文件…

嵌入式学习第十八天(目录IO)

目录IO: 1. mkdir int mkdir(const char *pathname, mode_t mode); 功能&#xff1a;创建目录文件 参数&#xff1a; pathname&#xff1a;文件路径 mode&#xff1a;文件的权限 rwx rwx rwx 111 111 111 0 7 7 7 r&#xff1a;目录中是否能够查看文件 w&#xff1a;目…

AMD FPGA设计优化宝典笔记(5)低频全局复位与高扇出

亚军老师的这本书《AMD FPGA设计优化宝典》&#xff0c;他主要讲了两个东西&#xff1a; 第一个东西是代码的良好风格&#xff1b; 第二个是设计收敛等的本质。 这个书的结构是一个总论&#xff0c;加上另外的9个优化&#xff0c;包含的有&#xff1a;时钟网络、组合逻辑、触发…

面向对象 设计原则

0 引言 单一职责原则&#xff1a;类应该只有一个改变的理由&#xff1b; 开放-封闭原则&#xff1a;类应该对扩展开放&#xff0c;对修改关闭&#xff1b; 迪米特原则&#xff1a;只和朋友交谈&#xff1b; 里氏替换原则&#xff1a;子类可以扩展父类的功能&#xff0c;但不能…

RocketMQ—RocketMQ消息重复消费问题

RocketMQ—RocketMQ消息重复消费问题 重复消费问题的描述 什么情况下会发生重复消费的问题&#xff1a; 生产者多次投递消息&#xff1a;如果生产者发送消息时&#xff0c;连接有延迟&#xff0c;MQ还没收到消息&#xff0c;生产者又发送了一次消息&#xff1b; 消费者方扩容…

Docker命令实战

文章目录 一、Docker常用命令-图谱二、基础实战命令2.1、查找镜像2.2、启动容器2.3、修改容器内容2.3.1、进入容器内部修改2.3.2、挂载数据到外部修改 2.4、提交改变2.5、镜像传输--将镜像保存成压缩包2.6、两台主机间压缩文件的传输拷贝2.7、推送阿里云个人远程镜像仓库2.8、其…