Tuple 元组
文章目录
- 一、什么是元组 ?
- 二、元组的具体操作
- 2.1 创建元组
- 2.1.1 tuple() 创建元组函数和 list() 创建列表函数总结
- 2.2 元组的元素访问操作
- 2.3 元组的元素计数操作
- 2.4 zip 对象
一、什么是元组 ?
-
列表属于可变序列,可以任意修改列表中的元素。
元组的访问和处理速度比列表快。
元组属于不可变序列,不能修改元组中的元素,因此,元组没有增加元素,修改元素,删除元素相关的方法。-
因此,只需要学习元组的创建和删除,元组中元素的访问和计数即可,元组支持如下操作
-
- 索引访问
-
- 切片操作
-
- 链接操作
-
- 成员关系操作
-
- 比较运算符
-
- 计数:元组长度len(),最大值max(),最小值min(),求和sum(),等
-
-
注意:元组的元素不能修改
- 元组不可向列表一样通过下标去修改列表中的数据,如果直接修改会报出异常
-
a = (20,30,9,8,3)a = [0]a[3]=33 #异常
-
元组的元素访问和列表一样,如果是单个元素是具体的数据,如果是范围访问返回的仍然是元组对象
-
a=(20,10,30,9,8)print(a[1])print(type(a[1]))print(a[1:3])print(type(a[1:3]))print(a[1:3])print(a[:4])print(a[::-1])- 运行结果:

- 运行结果:
二、元组的具体操作
2.1 创建元组
-
通过 “()” 创建元组,(小括号可以省略)
-
a=(10,20,30) # 或者 a=10,20,30-
注意:如果元组中只有一个元素,则必须后面加逗号,这是因为解释器会把(1)解释为整数1,而 (1,)解释为元组
-
a = (1,) # 或者 a =1,# 但是需要注意的是a = (1) #这种写法并不是元组 如果元组里面只有一个元素要在最后面加,print(type(a))
-
-
-
通过 “tuple()” 函数创建(tuple(可迭代的对象))
-
b=tuple() #创建一个空元组对象print(b)b=tuple("abc") # 创建一个元组对象,并根据传入的字符串迭代成元组print(b)b=tuple(range(3)) # 创建一个元组对象,并传入下标从0到3 在元组中迭代三个数字print(b)b=tuple([2,3,4]) # 创建一个元组对象,并传入列表在元组中把内容迭代出来print(b)- 运行结果

- 运行结果
-
2.1.1 tuple() 创建元组函数和 list() 创建列表函数总结
-
tuple() 可以接收列表,字符串,其他序列类型,迭代器生成元组
-
list() 可以接收元组,字符串,其他序列类型,迭代器等生成列表
2.2 元组的元素访问操作
index(): 获取元素的下标
-
a=(20,10,30,9,8)print(a.index(10))- 运行结果:1
count(): 获取元素在元组中出现的次数
-
a=(20,10,30,9,8,10)print(a.count(10))- 运行结果:2
sorted(): 将元组中的数据进行排序,输出成一个新的列表对象
-
列表关于排序的方法list.sorted()是修改原列表对象,元组没有该方法,如果对元组排序,只能使用内置函数sorted(tupleObj),并生成新的列表对象
-
a=(20,10,30,9,8)print(sorted(a))- 运行结果:[8, 9, 10, 20, 30]
+ : 元组的拼接,元组可以直接用 “ + ” 拼接,将两个元组中的数据拼接成一个元组
-
a = (1, 20)b = (30, 20)print(a+b)- 运行结果:(1, 20, 30, 20)
2.3 元组的元素计数操作
len():获取元组的长度
max(): 获取元组中最大值
min(): 获取元组中最小值
sum ():获取元组中全部元素相加的总和
-
代码示例
-
a=(20,10,30,9,8)# 因为获取出的结果为 int 类型,需要使用类型转换打印输出,使结果更加直观print("获取元组长度:" + str(len(a)))print("获取元组最大元素" + str(max(a)))print("获取元组最小元素:" + str(min(a)))print("计算元组中全部元素的总和:" + str(sum(a)))- 运行结果:

- 运行结果:
-
2.4 zip 对象
zip(obj obj):将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表
-
a = [1,2,3]b = ['a','b','c']c = [1.03,2.65,5.89]d = zip(a,b,c) # 将列表存储进 zip 对象当中e = zip(a,b,c)print(type(d)) # 打印当前对象类型print(tuple(d)) # 将对象存储进元组中,并将对象中的元素迭代入元组当中print(list(e)) # 将对象存储进元组中,并将对象中的元素迭代入列表当中- 运行结果:

- 运行结果:
相关文章:
Tuple 元组
文章目录 一、什么是元组 ?二、元组的具体操作2.1 创建元组2.1.1 tuple() 创建元组函数和 list() 创建列表函数总结 2.2 元组的元素访问操作2.3 元组的元素计数操作2.4 zip 对象 一、什么是元组 ? 列表属于可变序列,可以任意修改列表中的元素。 元组的…...
(资料收藏)王阳明传《知行合一》共74讲,王阳明知行合一音频讲解资料
今天给大家带来的不是软件,而是一份精神食粮——《知行合一》的教程福利。这可不是一般的教程,它关乎心灵,关乎智慧,关乎我们如何在纷繁复杂的世界中找到自己的位置。 咱们得聊聊王阳明,这位明代的大儒,他…...
空气质量预报模式系统WRF-CMAQ
空气污染问题日益受到各级政府以及社会公众的高度重视,从实时的数据监测公布到空气质量数值预报及预报产品的发布,我国在空气质量监测和预报方面取得了一定进展。随着计算机技术的高速发展、空气污染监测手段的提高和人们对大气物理化学过程认识的深入&a…...
Collections.sort()方法总结
Collections.sort()方法总结 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们来探讨 Java 中的 Collections.sort() 方法。这个方法是 Java 集合框架中的…...
Java23种设计模式(二)
1、单例模式 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有…...
Web前端收入来源:探索多元化的盈利渠道
Web前端收入来源:探索多元化的盈利渠道 在数字化时代,Web前端技术日益成为推动互联网业务发展的重要力量。对于前端开发者而言,除了传统的薪资收入外,还存在多种潜在的收入来源。本文将从四个方面、五个方面、六个方面和七个方面…...
抽象工厂模式(大话设计模式)C/C++版本
抽象工厂模式 C 参考:https://www.cnblogs.com/Galesaur-wcy/p/15927110.html #include <iostream> using namespace std;// 抽象产品Department ,定义具体产品的公共接口 class Department { public:virtual ~Department() default;virtual void Insert()…...
springboot宠物医院信息管理系统-计算机毕业设计源码04164
摘 要 现如今在中国,随着人民生活质量的逐渐提高,以及人民群众消费能力的日渐增长,各种各样的家养小动物,已经逐渐成为人类越来越亲密的生活伴侣。并且,现如今社会竞争及其激烈,人们的生活节奏越发急促、紧…...
Leetcode Hot100之哈希表
1. 两数之和 题目描述 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现思路…...
Vision Transformer with Sparse Scan Prior
摘要 https://arxiv.org/pdf/2405.13335v1 In recent years, Transformers have achieved remarkable progress in computer vision tasks. However, their global modeling often comes with substantial computational overhead, in stark contrast to the human eye’s eff…...
笔记-python 中BeautifulSoup入门
在前面的例子用,我用了BeautifulSoup来从58同城抓取了手机维修的店铺信息,这个库使用起来的确是很方便的。本文是BeautifulSoup 的一个详细的介绍,算是入门把。文档地址:http://www.crummy.com/software/BeautifulSoup/bs4/doc/ …...
Tomcat Websocket应用实例研究
概述 本文介绍了如何根据Tomcat给出的websocket实例,通过对实例的学习,定制自己基于websocket的应用。 环境及版本: Ubuntu 22.04.4 LTSApache Tomcat/10.1.20openjdk 11.0.23 2024-04-16浏览器:Chrome 相关资源及链接 Class…...
leetcode-11-二叉树前中后序遍历以及层次遍历
一、递归版 前序遍历 (先根遍历) 中左右 class Solution {public List<Integer> preorderTraversal(TreeNode root) {List<Integer> result new ArrayList<Integer>();preorder(root, result);return result;}public void preorder…...
Python基础学习笔记(十一)——集合
目录 一、集合的介绍与创建二、集合的存储原理三、元素的修改1. 添加元素2. 删除元素 四、集合的运算五、集合的判定 一、集合的介绍与创建 集合(set),一种可变、无序、不重复的数据结构,由大括号{}内、用逗号分隔的一组元素组成。…...
FineReport
1.FineReport 官网 :FineReport产品简介- FineReport帮助文档 - 全面的报表使用教程和学习资料 下载地址 免费下载FineReport - FineReport报表官网 FineReport是一款用于报表制作,分析和展示的工具。 普通模板:是 FineReport 最常用…...
嵌入式就业前景好么
嵌入式就业前景在当前环境下是较为乐观的,以下是对嵌入式就业前景的详细分析: 广泛应用领域:嵌入式系统广泛应用于智能家居、医疗设备、航空航天等领域。随着物联网(IoT)的快速发展,预计到2024年ÿ…...
为啥找对象千万别找大厂男,还好我不是大厂的。。
网上看到一大厂女员工发文说:找对象千万别找大厂男,理由说了一大堆,无非就是大厂男为了逃避带娃,以加班为由宁愿在工位上玩游戏也不愿回家。当然这种观点有的人赞同有的人反对。 网友精彩评论: --------------下面是今…...
如何查看k8s中service的负载均衡策略
在Kubernetes中,Service的负载均衡策略一般由kube-proxy负责,kube-proxy使用iptables或IPVS规则进行负载均衡。默认情况下,kube-proxy使用的是轮询(Round Robin)策略,但是在使用IPVS模式时,可以…...
Linux-DNS域名解析服务01
BIND 域名服务基础 1、DNS(Domain Name System)系统的作用及类型 整个 Internet 大家庭中连接了数以亿计的服务器、个人主机,其中大部分的网站、邮件等服务器都使用了域名形式的地址,如 www.google.com、mail.163.com 等。很显然…...
[c++刷题]贪心算法.N01
题目如上: 首先通过经验分析,要用最少的减半次数,使得数组总和减少至一半以上,那么第一反应就是每次都挑数组中最大的数据去减半,这样可以是每次数组总和值减少程度最大化。 代码思路:利用大根堆去找数据中的最大值,…...
网络编程(Modbus进阶)
思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...
Flask RESTful 示例
目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题: 下面创建一个简单的Flask RESTful API示例。首先,我们需要创建环境,安装必要的依赖,然后…...
Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)
概述 在 Swift 开发语言中,各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过,在涉及到多个子类派生于基类进行多态模拟的场景下,…...
剑指offer20_链表中环的入口节点
链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...
华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...
AI编程--插件对比分析:CodeRider、GitHub Copilot及其他
AI编程插件对比分析:CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展,AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者,分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...
如何在网页里填写 PDF 表格?
有时候,你可能希望用户能在你的网站上填写 PDF 表单。然而,这件事并不简单,因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件,但原生并不支持编辑或填写它们。更糟的是,如果你想收集表单数据ÿ…...
【生成模型】视频生成论文调研
工作清单 上游应用方向:控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...
力扣热题100 k个一组反转链表题解
题目: 代码: func reverseKGroup(head *ListNode, k int) *ListNode {cur : headfor i : 0; i < k; i {if cur nil {return head}cur cur.Next}newHead : reverse(head, cur)head.Next reverseKGroup(cur, k)return newHead }func reverse(start, end *ListNode) *ListN…...
Linux nano命令的基本使用
参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时,显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...
