【头歌系统Python实验】学习-Python元组之应用一

如果对你有帮助的话,不妨点赞收藏评论一下吧,爱你么么哒😘❤️❤️❤️

第1关:学习-Python元组之应用一

任务描述

本关任务:给定 a、b、c 三个变量,三个变量的值都是通过 input 函数获取,且都是整型数据,请编写代码交换三个变量的值:a 的值给 b,b 的值给 c,c 的值给 a。交换之后,输出 a、b、c 的值。

相关知识

为了完成本关任务,你需要掌握 Python 中的元组。

元组

在之前学习类型实训中,我们学习过列表以及它的性质,元组和列表相似,只不过定义的时候使用的不是[],而是(),元组中的元素和列表一样,可以是任意数据类型的数据。

  1. tup = (1,1.5,"a",[1,2,3,4],(1,2,3,4)) # 创建一个包含整型、浮点型、字符型、列表和元组类型数据的元组

  2. value = tup[1] # 取值方式和列表一致,取元组中的第二个元素

  3. print(type(tup))

  4. print(value)

执行结果:

  1. <class 'tuple'>

  2. 1.5

需要注意的是,元组中的任何元素都不可更改

  1. tup = (1,1.5,"a",[1,2,3,4],(1,2,3,4))

  2. tup[1] = 2.4 # 想将元组中的第二个元素修改为2.4

执行结果会报错,并提示元组类型的数据不支持修改。但是元组内的可变类型的数据是可以更改的,我们可以发现元组 tup 中有一个列表类型的元素,这个列表类型的元素是可以更改的。

  1. tup = (1,1.5,"a",[1,2,3,4],(1,2,3,4))

  2. # tup[3]得到的是元组中的第4个列表元素,tup[3][2]得到的是列表中的第三个元素,这一步是将元组中的第四个列表中的第三个元素修改该为0

  3. tup[3][2] = 0

  4. print(tup)

执行结果:

  1. (1, 1.5, 'a', [1, 2, 0, 4], (1, 2, 3, 4))

还有一点需要注意,如果我们想要创建只有单个元素的数组时,需要在元素末尾加一个逗号。

  1. tup = (1,) # 创建的是一个元组

  2. num = (1) # 创建的是一个 int 类型的数据

  3. print(type(tup))

  4. print(type(num))

执行结果:

  1. <class 'tuple'>

  2. <class 'int'>

其它类型的数据想要转换成元组时,可以使用 Python 中的 tuple 函数来进行转换。

  1. list1 = (1,2,3,4)

  2. print(tuple(list1))

执行结果:

  1. (1,2,3,4)

由于元组中的元素不可更改,所以能应用在元组上的方法相比列表就少了很多,主要有以下三个:

  • len():返回元组的长度

  • max():返回元组中最大的元素

  • min():返回元组中最小的元素

元组在 Python 中还有一个非常重要的应用,两个变量的值想交换时,可以使用以下代码:

  1. a = 1

  2. b = 2

  3. a,b = b,a # 交换值,等价于 a,b = (b,a)

  4. print(a,b)

执行结果:

  1. 2 1

我们通过代码可以发现,元组不一定需要()来表示,如果多个对象用逗号分隔,这样也能表示一个元组。

编程要求

仔细阅读右侧编辑区内给出的代码框架及注释,按照提示编写程序代码。输出格式请参考测试集中的预期输出。

测试说明

平台将使用测试集运行你编写的程序代码,若全部的运行结果正确,则通关。 可在右侧 “测试结果”区查看具体的测试集详情。


开始你的任务吧,祝你成功!

"""
任务:给定 a、b、c 三个变量,三个变量的值都是通过 input 函数获取,且都是整型数据,请编写代码交换三个变量的值,a 的值给 b,b 的值给 c,c 的值给 a,交换之后,输出 a、b、c 的结果。
"""# 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
##########Begin##########
# 编写代码实现三个变量值的交换,按照预期输出打印三个变量交换后的值
a=int(input())
b=int(input())
c=int(input())
a,b,c=c,a,b
print(f'a:{a},b:{b},c:{c}')##########End##########

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

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

相关文章

AWS re:Invent 2023-亚马逊云科技全球年度技术盛会

一:会议地址 2023 re:Invent 全球大会主题演讲 - 亚马逊云科技从基础设施和人工智能/机器学习创新,到云计算领域的最新趋势与突破,倾听亚马逊云科技领导者谈论他们最关心的方面。https://webinar.amazoncloud.cn/reInvent2023/keynotes.html北京时间2023年12月1日00:30-02:…

day7 note中的所有字符是否在magazine中能找到

bool canConstruct(string ransomNote, string magazine) { int record[26] {0}; //add if (ransomNote.size() > magazine.size()) { return false; } for (int i 0; i < magazine.length(); i) { // 通过record数据记录 magazine里各个字符出现次数 record[magazine[…

VSCode之C++ CUDA入门:reduce的N+1重境界

背景 Reduce是几乎所有多线程技术的基础和关键&#xff0c;同样也是诸如深度学习等领域的核心&#xff0c;简单如卷积运算&#xff0c;复杂如梯度聚合、分布式训练等&#xff0c;了解CUDA实现reduce&#xff0c;以及优化reduce是理解CUDA软硬件连接点的很好切入点。 硬件环境&…

HarmonyOS4.0从零开始的开发教程03初识ArkTS开发语言(中)

HarmonyOS&#xff08;二&#xff09;初识ArkTS开发语言&#xff08;中&#xff09;之TypeScript入门 浅析ArkTS的起源和演进 1 引言 Mozilla创造了JS&#xff0c;Microsoft创建了TS&#xff0c;Huawei进一步推出了ArkTS。 从最初的基础的逻辑交互能力&#xff0c;到具备类…

http和https的区别有哪些

目录 HTTP&#xff08;HyperText Transfer Protocol&#xff09; HTTPS&#xff08;HyperText Transfer Protocol Secure&#xff09; 区别与优势 应用场景 未来趋势 当我们浏览互联网时&#xff0c;我们经常听到两个常用的协议&#xff1a;HTTP&#xff08;HyperText Tra…

Excel 动态拼接表头实现导出

public class Column {//单元格内容private String content;//字段名称&#xff0c;用户导出表格时反射调用private String fieldName;//这个单元格的集合private List<Column> listTpamscolumn new ArrayList<Column>();int totalRow;int totalCol;int row;//exc…

易宝OA 两处任意文件上传漏洞复现

0x01 产品简介 易宝OA系统是一种专门为企业和机构的日常办公工作提供服务的综合性软件平台,具有信息管理、 流程管理 、知识管理(档案和业务管理)、协同办公等多种功能。 0x02 漏洞概述 易宝OA系统UploadFile、BasicService.asmx等接口处存在文件上传漏洞,未授权的攻击者可…

记录 | vscode pyhton c++调试launch.json配置

下面提供 vscode 中 python 和 c 调试配置的 launch.json (好用&#xff0c;已用好几年&#xff0c;建议收藏) {// 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。// 欲了解更多信息&#xff0c;请访问: https://go.microsoft.com/fwlink/?linkid830387&qu…

【Spring】依赖注入之属性注入详解

前言&#xff1a; 我们在进行web开发时&#xff0c;基本上一个接口对应一个实现类&#xff0c;比如IOrderService接口对应一个OrderServiceImpl实现类&#xff0c;给OrderServiceImpl标注Service注解后&#xff0c;Spring在启动时就会将其注册成bean进行统一管理。在Co…

WireShark监控浏览器登录过程网络请求

软件开发中经常前后端扯皮。一种是用Chrome浏览器的开发者工具 来看网络交互&#xff0c;但是前提是 网络端口的确是通的。 WireShark工作在更低层。 这个工具最大的好处&#xff0c;大家别扯皮&#xff0c;看网络底层的log&#xff0c;到底 你的端口开没开&#xff0c; 数据…

计算机图形图像技术(OpenCV核心功能、图像变换与图像平滑处理)

一、实验原理&#xff1a; 1、显示图像 void imshow(const string &name, InputArray image); ①功能&#xff1a;在指定窗口中显示图像。 ②参数&#xff1a;name为窗口的名字&#xff1b;image为待显示的图像。 ③说明&#xff1a;可显示彩色或灰度的字节图像和浮点数图…

C++ 中的运算符重载(三)

重载加法运算符和减法运算符-&#xff0c;用于实现对象的加法和减法。加法运算符和减法运算符-是两种常用的运算符&#xff0c;它们可以对两个操作数进行加法和减法运算&#xff0c;返回一个运算结果。但是&#xff0c;如果我们想要对自定义类型的数据进行加法和减法运算&#…

Threejs项目实战之一:汽车外观换肤效果三维展示

目录 最终效果1 创建项目2 安装插件3 编写代码3.1 准备工作3.2 代码编写3.2.1 在template标签中构建html页面3.2.2 在style标签中构建页面样式文件3.2.3 在script标签中编写js代码 最终效果 先看下最终实现的效果 接下来&#xff0c;我们就从创建项目开始&#xff0c;一步一步…

RDMA编程实例rdma_cm API

RDMA编程基础 存储大师班 | RDMA简介与编程基础 -https://zhuanlan.zhihu.com/p/387549948 1. RDMA的学习环境搭建 RDMA需要专门的RDMA网卡或者InfiniBand卡才能使用&#xff0c;学习RDMA而又没有这些硬件设备&#xff0c;可以使用一个软件RDMA模拟环境&#xff0c;softiwarp …

【软考】局部性原理

目录 一、说明二、类型2.1 时间局部性2.2 空间局限性2.3顺序局部性 一、说明 1.局部性原理是指CPU访问存储器时&#xff0c;无论是存取指令还是存取数据&#xff0c;所访问的存储单元都趋于聚集在一个较小的连续区域中。 二、类型 2.1 时间局部性 1.Temporal Locality 2.如果…

自主并不等于智能

自主不等于智能&#xff0c;也不是自动化的简单升级。自主性和智能性是两个不同的概念。自主性指物体或系统具有独立决策和行动的能力&#xff0c;不需要人为干预。而智能性指物体或系统具有类似人类的智慧、学习和适应能力。 虽然自主性通常与智能性相关&#xff0c;但并非所有…

李宏毅bert记录

一、自监督学习&#xff08;Self-supervised Learning&#xff09; 在监督学习中&#xff0c;模型的输入为x&#xff0c;若期望输出是y&#xff0c;则在训练的时候需要给模型的期望输出y以判断其误差——有输入和输出标签才能训练监督学习的模型。 自监督学习在没有标注的训练…

【后端】JVM 远程调试

前言 再好的代码,也还是有瑕疵的,不是代码不给力,是线上问题太牛逼太玄幻。这不刚部署就出现了问题,幸好还是测试的时候,早点发现早点解决,不给任何人带来不必要的损失,是我做人的原则,只要钱到位,任何问题都不是问题。 JVM 远程调试 不得不说 IDEA 和 宝塔配合是真…

工厂方法设计模式项目实践

前言 以采集数据处理逻辑为例&#xff0c;数据采集分为不同种类如&#xff1a;MQTT、MODBUS、HTTP等&#xff0c;不同的采集数据有不同的解析处理逻辑。但总体解析处理步骤是固定的。可以使用工厂方法设计模式简化代码&#xff0c;让代码变得更加优雅。 代码实战 抽象类 总体…

gpt3、gpt2与gpt1区别

参考&#xff1a;深度学习&#xff1a;GPT1、GPT2、GPT-3_HanZee的博客-CSDN博客 Zero-shot Learning / One-shot Learning-CSDN博客 Zero-shot&#xff08;零次学习&#xff09;简介-CSDN博客 GPT-2 模型由多层单向transformer的解码器部分构成&#xff0c;本质上是自回归模型…