文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python元组的定义及使用方法是什么

2023-06-25 11:38

关注

本篇内容主要讲解“Python元组的定义及使用方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python元组的定义及使用方法是什么”吧!

1、前言

Python中元组是一个和列表非常类似的数据类型,不同之处就是列表中的元素可以修改,而元组之中的元素不可以修改。

2、定义和使用元组

2.1 定义

定义元素通常使用小括号()字面量语法,示例代码如下:

tuple1 = ("Hello", "一碗周", "你好")print(type(tuple1))  # 查看元组类型  <class 'tuple'>print(tuple1)  # ('Hello', '一碗周', '你好')

2.2 使用

元组支持的运算符和使用方法和列表是一样的,示例代码如下:

tuple1 = ("Hello", "一碗周", "掘金", "开发者", "strive")tuple2 = (10, 20, 60, 34)# 拼接tuple3 = tuple1 + tuple2print(tuple3)  # ('Hello', '一碗周', '掘金', '开发者', 'strive', 10, 20, 60, 34)print(tuple2 * 2)  # (10, 20, 60, 34, 10, 20, 60, 34)# 索引和切片print(tuple1[1], tuple1[-4])  # 一碗周 一碗周print(tuple3[:2])  # ('Hello', '一碗周')print(tuple3[::2])  # ('Hello', '掘金', 'strive', 20, 34)# 遍历操作for ch in tuple1:    print(ch)'''Hello一碗周掘金开发者strive'''# 成员运算print("一碗周" in tuple1)  # Trueprint("掘金" not in tuple1)  # False

一个空()表示空元组,一个元组中有两个元素,称之为二元组,有五个就成称为五元组,但是如果里面为('hello')则不是元组,这个括号就变成了改变优先级的圆括号了;如要想要使其变成圆括号,就要加上一个逗号,,否则就不是代表一元组了。

示例代码如下:

a = ()print(type(a))    # <class 'tuple'>b = ('一碗周')print(type(b))    # <class 'str'>c = (100)print(type(c))    # <class 'int'>d = ('一碗周', )print(type(d))    # <class 'tuple'>e = (100, )print(type(e))    # <class 'tuple'>

3、元组的应用场景

3.1 打包和解包

把多个用逗号分隔的值赋给一个变量时,多个值会打包成一个元组类型;把一个元组赋值给多个变量时,元组会解包成多个值然后分别赋给对应的变量,

示例代码如下:

t = "Hello", "一碗周", "掘金", "开发者", "strive"print(type(t))  # <class 'tuple'>print(t)  # ('Hello', '一碗周', '掘金', '开发者', 'strive')x, y, z, i, j = tprint(x, y, z, i, j)  # Hello 一碗周 掘金 开发者 strive

如果在解包时,元素的个数和变量的个数不一致,就引起错误,就比如下面这段代码

t= ("Hello", "一碗周", "掘金", "开发者", "strive")# x, y, z = t # ValueError: too many values to unpackx, y, z, i, j, k, l = t # ValueError: not enough values to unpackValueError: too many values to unpack解包的值不足ValueError: not enough values to unpack解包的值太多

解决变量少于元组个数这个错误的方法是使用*通配符,有了这个通配符一个变量就可以接收多个值,就将某个变个变成了一个列表,这个通配符只能出现一次,

示例代码如下:

t = ("Hello", "一碗周", "掘金", "开发者", "strive")x, y, *z = tprint(x, y, z)  # Hello 一碗周 ['掘金', '开发者', 'strive']x, *y, z = tprint(x, y, z)  # Hello ['一碗周', '掘金', '开发者'] strive*x, y, z = tprint(x, y, z)  # ['Hello', '一碗周', '掘金'] 开发者 strive

3.2 交换两个变量的值

Python中,交换两个变量a和b的值只需要使用如下所示的代码

a, b = b, a

同理,如果要将三个变量a、b、c的值互换,即b赋给a,c赋给b,a赋给c,也可以如法炮制。

a, b, c = b, c, a

3.3 让函数返回多个值

如果return语句中有两个值,这两个值会组装成一个二元组然后返回。所以调用定义的函数会得到这个二元组,也可以通过解包语法将二元组中的两个值分别赋给两个变量。

到此,相信大家对“Python元组的定义及使用方法是什么”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯