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

2023-12-13 10:40:16

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

第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##########

文章来源:https://blog.csdn.net/YK3020936216/article/details/134842474
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。