python 容器的一些操作 - 元组

1、  元组可以存放不同种类型的元素

2、   元组是无序的

3、   元组长度不可变

一、元组推导式

names = ("大傻", "二傻", "三傻")
names = (name for name in names if "二" in name)
print(names) #返回了一个生成器对像

输出
<generator object <genexpr> at 0x000002891146CAC8>

好在这个对像可以迭代

我们可以这么写

names = ("大傻", "二傻", "三傻","二呆")
names =tuple((name for name in names if "二" in name)) #转换一下
print(names)


('二傻', '二呆')

二、具名元组

1、我们定义一个学生的元组

student = ("张三",13,98)

时间久了,你再看,张三好像还知道是啥 ,应该是名子,13,18又是什么鬼,所以具名元组出现了

具名元组的步骤

(1)先定义一个元组的模板 

from collections import namedtuple

(2)再利用这个模板,为元组初始化

from collections import namedtuple  #引入包
#创建具名类模板,Students是模板名子,["name","age","score"]是元素名子
Student = namedtuple("Students",["name","age","score"]) 
student = Student("张三",13,98) #实现具名类

print(student) #这样输出元组,你是不是就知道每个元组是什么了

#可以用元素名子调用
print(student.name+" "+str(student.age)+" "+str(student.score))

for info in student:  #具名类的名子只是说明,本身对元组结构没有改变,我们还可以正常输出
    print(info)


Students(name='张三', age=13, score=98)

张三 13 98

张三
13
98

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值