Self-study Python Fish-C Note-6 P27

python 中的元组

本文主要讲解了python中元组的使用
本文为自学B站上鱼C的python课程随手做的笔记。
如有问题,欢迎大家批评指正
原视频链接:https://www.bilibili.com/video/BV1c4411e77t?p=8

元组

元组可以像列表一样同时容纳多种类型的对象,又有像字符串一样不可变的特性。

1. 生成

语法,与列表一样,只是[] 改成 ()

元组:
tuple = (x,z,y,e,w)
在不引起歧义的情况下,python允许省略掉元组的括弧:
tuple = x,z,y,e,w  #只用逗号隔开
# 但为实际编程方便,尽量还是都带上括弧。
列表:
list = [x,z,y,e,w]

NB:
(1)如何生成只有一个元素的元组:
请添加图片描述

(2) 元组就是固若金汤完全不可变的嘛?不是,当元组里面的元素指向可以变的列表,那么我们依然可以修改列表的内容。
请添加图片描述

2. 索引与切片

元组可以像列表一样通过下标索引获取元素。
请添加图片描述
元组也支持切片操作,用法和列表是一样的。因为切片操作的含义是将目标对象中的元素以某种特定的组合导出,而非修改对象本身。
请添加图片描述

3. 元组的操作

原本列表里的增、删、改、查的函数,在元组这里只有查可以继续使用。

tuple.count(x)

返回x在元组中的数量
请添加图片描述

tuple.index(x)

返回x在元组中的下标
请添加图片描述

元组的拼接(+)和重复(*)

拼接和重复在元组里可以正常使用
请添加图片描述

嵌套 和 列表推导式(不存在元组推导式)

元组也可以支持嵌套
请添加图片描述
不存在元组推导式子,仿照列表推导式强加在元组上只会生成迭代器:
请添加图片描述

打包与解包

这个过程不仅适用于元组,也适用于所有的序列(元组,字符串,列表)
过程与实例:
把多个元素合起来,生成一个元组的过程就叫打包。
请添加图片描述
这里整数123,字符串“abc”,和浮点数3.6 被打包成一个元组
那么对应的,将他们一次性赋值给3个变量名的行为就称之为解包:
请添加图片描述
这也适用于列表和字符串:
请添加图片描述
请添加图片描述
NB:(1)但是无论哪种打包解包,都需要注意赋值号左边的变量名数量必须和右边的序列的元素数量一致,否则报错。
请添加图片描述
(2)其实python的多重赋值,比如 x, y = 10, 20,其实就是先讲10,20用元组进行打包,然后在将其解包而实现的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值