当前位置: 首页 > news >正文

【Python】序列类型②-元组

文章目录

  • 1.元组简介
  • 2.元组的定义
    • 2.1定义只有一个元素的元组
  • 3.元组的下标访问
  • 4.元组的常用方法
  • 5.使用in判断是否存在元素
  • 6.多元赋值操作

1.元组简介

元组和列表一样可以存放多个,不同数据类型的元素
与列表最大的不同就是:列表是可变的,而元组不可变

2.元组的定义

元组的定义: 使用()定义元组,元素之间使用逗号隔开

a = (1, 2, True, "python")
b = ((1, 2, 3), (4, 5, 6))

元组也是可以嵌套的

如果想要定义空元组,也可以使用关键字tuple进行定义

示例:

a = ()
b = tuple()
print(a)
print(type(a))
print(b)
print(type(b))# 输出结果:
# ()
# <class 'tuple'>
# ()
# <class 'tuple'>

如果用tuple 定义元组,实际上是得到了元组的类对象

2.1定义只有一个元素的元组

如果要定义只有一个元素的元组,需要在元素的后面加一个 "逗号"

示例:

str1 = ("python")
print(type(str1))str2 = ("python",)
print(type(str2))# 输出结果:
# <class 'str'>
# <class 'tuple'>

一定不能省略逗号,如果省略,就不是元组了

3.元组的下标访问

其实元组的下标访问和列表是一样的,下标从0开始,len-1结束.
元组的切片操作和遍历操作是与列表相同.这里就不再做介绍了.

需要注意的是:元组只支持"读"操作,并不能修改,进行修改会抛出异常
示例:

a = (1, 2, 3, 4)
a[1] = 9
# TypeError: 'tuple' object does not support item assignment

4.元组的常用方法

元组的常用方法很少,主要是因为它不支持修改操作.

方法描述
元组名.index(x)查询x在元组中的下标,如果存在返回下标,否则会报错
元组名.count(x)统计x在元组中出现的次数
len(元组名)返回元组的元素个数

5.使用in判断是否存在元素

语法: 元素 in 元组名
若存在返回True,不存在返回False

a = (1, 2, 3, 4)
print(f"2是否存在a元组中: {2 in a}")
print(f"5是否存在a元组中: {5 in a}")
# 2是否存在a元组中: True
# 5是否存在a元组中: False

6.多元赋值操作

在进行多元赋值时,本质上是按照元组的方式进行操作的
示例:

def getNum():n = 10m = 20return n,mx, y = getNum()
print(x)
print(y)
print(type(getNum()))
# 10
# 20
# <class 'tuple'>

总体来说元组还是比较简单的. 但简单的内容往往也会容易忽视,因此更应该注重这些细小的知识点

感谢你的观看!希望这篇文章能帮到你!
python专栏在不断更新中,欢迎订阅!
“愿与君共勉,携手共进!”
在这里插入图片描述

http://www.lryc.cn/news/64784.html

相关文章:

  • 循环的数字
  • MySQL查询之聚合函数查询
  • 普通2本,去过字节外包,到现在年薪25W+的测试开发,我的2年转行心酸经历...
  • util.callbackify
  • 解决使用CLIP模型时TypeError: Cannot handle this data type: (1, 1, 224, 224), |u1
  • Mysql第二章 多表查询的操作
  • ESP32-CAM:TinyML 图像分类——水果与蔬菜
  • 如何防止订单重复支付
  • 不是那么快乐的五一
  • Maven命令和配置详解
  • P3029 [USACO11NOV]Cow Lineup S 双指针 单调队列
  • 数据结构与算法之链表: Leetcode 83. 删除排序链表中的重复元素 (Typescript版)
  • ubuntu16.04升级到20.04后报错 By not providing “FindEigen.cmake“
  • 设计模式——模板方法模式
  • 15 | Qt的自定义信号
  • 线性表,顺序表,链表
  • 洛谷 P2782 友好城市 线性DP 最长上升子序列 二分查找 lower_bound
  • easyexcel读取excel合并单元格数据
  • 2023哪款蓝牙耳机性价比高?200左右高性价比蓝牙耳机推荐
  • Java代码弱点与修复之——Masked Field(掩码字段)
  • C语言编程入门之刷题篇(C语言130题)(8)
  • QML动画类型总结
  • 编译一个魔兽世界开源服务端Windows需要安装什么环境
  • HTML5字体集合的实践经验
  • Mybatis 框架 ( 一 ) 基本步骤
  • 【华为OD机试真题】We Are A Team(C++javapython)100%通过率 超详细代码注释 代码优化
  • Oracle_Workflow_Builder工作流工具(一)
  • JavaWeb学习--RequestResponse
  • Linux cat 命令
  • 力扣sql中等篇练习(十四)