Python课堂10——六大数据结构之元组


前言

前面我们学了数值类型、字符串和列表,这些数据结构中的值都可以通过索引等手段进行改变,那生活中如果我们要如何进行储存一些不可变的值呢?毫无疑问元祖是这类情况中重要的元素,下面就让我们来详细探究一下吧!


一、元组是什么?

定义:元组(tuble)是Python中的一种数据结构,它类似于列表,但是元组是不可变的,意味着一旦创建就不能修改。元组由一对圆括号 () 包围,其中的元素可以是任何类型的对象,并且可以通过索引访问。

语法:在括号里面用逗号隔开不同类型的值

注意:一个元组中可以储存多个类型的数据,但元组内的数据是不能被修改的(没有增、删、改)

应用对象:用来储存每个人的身份证号等个人信息,密码等等

代码举例:

t = (123, 'a', '我', (1, 2))
print(t)  # (123, 'a', '我', (1, 2))

二、元组的基本操作

1.定义空元组

t = ()  # 空元组
print(t, type(t))  # <class 'tuple'>
# 注意:当元组的小括号内只有一个元素,此时代表的是包含的意思,而不是定义元组。如果元组内只有一个元素,必须加逗号隔开,才是元祖
s = ('name')
print(s, type(s))  # <class 'str'>
s = ('name',)  # 需要注意的是,如果元组只有一个元素,需要在元素后面加上逗号,否则将被认为是其他类型的对象,而不是元组
print(s, type(s))  # <class 'tuple'>

2.元组的常见操作

2.1索引取值
语法:元组[索引]
实例演示:

t = (123, 'a', '我', (1, 2))
# t[0] = 99  #元组如果使用索引修改  直接报错
print(t[3])  # (1, 2)

2.1 切片(与前面将的切片大同小异,这里就简单演示一下)
语法:元组[开始索引,结束索引,步长]
代码演示:

t = (123, 'a', '我', (1, 2))
print(t[1:5])  # ('a', '我', (1, 2))

2.3 成员运算符(in)
作用:判断某元素是否在元组中

代码演示:

t = (123, 'a', '我', ['a', 'b'], (1, 2))
print('123' in t)  # false
print(1 in t)  # False

2.4 计算函数
这个过程用到的还是我们的老朋友len()函数

代码演示:

t = (123, 'a', '我', ['a', 'b'], (1, 2))
print(len(t))  # 5

2.5 for循环可遍历元组
元组是可迭代对象

代码演示:

t = (123, 'a', '我', ['a', 'b'], (1, 2))
for i in t:
	print(i)

3.元组的查找

3.1 index函数
语法:元组.index(),找不到直接报错

代码演示:

t = (123, 'a', '我', ['a', 'b'], (1, 2))
print(t.index(123))

3.2 count
语法:元组.count(),找不到返回 0

代码演示:

t = (123, 1, True, 'a', '我', ['a', 'b'], (1, 2))
print(t.count(1))  # 2  元组里的True也算在内 1+1=2

4.元组的特殊用法

4.1 使用内置函数 tuple() 将其他可迭代对象(如列表、字符串等)转换为元组

代码演示:

my_tuple = tuple([1, 2, 3])
print(my_tuple)  # (1, 2, 3)

4.2 在定义变量时,可以省略圆括号,直接将逗号分隔的元素赋值给变量

代码演示:

my_tuple = 1, 2, 3
print(my_tuple)  # (1, 2, 3)

朋友,人生之路并非只有坦途,也有不少崎岖与坎坷,甚至会有一时难以跨越的沟坎儿。在这样的紧要关头我们只有一种选择:再向前跨出一步!尽管可能非常艰难,但请相信:只要坚持下去,你的人生会无比绚丽!

  • 23
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

莘薪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值