Python最冷门的模块是什么

介绍

今天就跟大家聊聊有关Python最冷门的模块是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

今天开始,开一个冷门模块的系列更新。

集合模块算得上是最冷门的模块之一,用得人少,但是功能很强大。

集合提供了4个重要的数据类型,在实际开发中或多或少会接触到,通过使用这些数据类型,可以让你的代码变得更优雅,更地道。

 Python最冷门的模块是什么

今天先来介绍namedtuple这个类型

namedtuple

namedtuple是元组(tuple)类型的子类,所以本质上它还是一个元组类型,继承了元组所有的的特性,namedtuple特别之处在于你可以通过名字来访问元组中的元素,类似字典,通过关键来访问价值。

以前访问元组中的元素必须通过索引访问

 <代码>祝辞祝辞祝辞x, y=1, 2 
在祝辞祝辞点=(x, y)
在祝辞祝辞1点[0]

在祝辞祝辞2点[1]

现在你可以通过属性名来访问,先看如何定义一个namedtuple

定义
 <代码>从集合进口namedtuple 
#首先定义一个namedtuple类
#类的名字是“Point"
#它有两个属性x和y
在祝辞祝辞点=namedtuple(& # 39;点# 39;[& # 39;x # 39; & # 39; y # 39;])

# namedtuple初始化
在祝辞祝辞p=点(y=x=11日22)

#和tuple类型一样,通过下标索引访问,等价于p=(11、22)
在祝辞祝辞p [0] + [1]


33 #通过字段属性来访问,这是namedtuple独有的特性
在祝辞祝辞p。x + p。33 y

咋看起来,要使用namedtuple还是挺麻烦的,不像tuple一样,直接p=(11、22)就定义了一个元组对象,那什么场景下会用到namedtuple呢?

答案是在使用元组可读性不强,但是又不希望用类来自定义类的时候。

比如有这样一组数据

 bob =,(& # 39;鲍勃# 39;,,30日,& # 39;男性# 39;)

看值其实你是不知道这里面的3个元素分别表示什么意思的,也许你能猜出来,但也仅仅是靠猜,那怎么样可读性更好一点呢?其实,我们可以自定义一个类来抽象化这组数据

 <代码>类人:

,,def __init__(姓名、年龄、性别):
,,,名字,self.name=
,,,自我。年龄=年龄
,,,自我。性别=性别

鲍勃=人(& # 39;鲍勃# 39;,30日& # 39;男性# 39;)

通过类的人,你可以一目了,然知道鲍勃对应的就是名字,30对应的是年龄,男性对应的性别字段。

可是这样做,虽然可读性更强一点了,但是代码更麻烦,更重要的是创建一个这样的对象消耗的成本会比纯粹的元组高很多。

而namedtuple正好可以解决这种问题,它即继承了tuple良好的性能,又有可读性的特点。

 <代码>从集合进口namedtuple 

人=namedtuple (“Person",“名字年龄gender")
鲍勃=人(name=& # 39;鲍勃# 39;,=30岁性别=& # 39;男性# 39;)

在祝辞祝辞鲍勃[0]
& # 39;鲍勃# 39;
在祝辞祝辞bob.name
& # 39;鲍勃# 39;
在祝辞祝辞bob.age
30
在祝辞祝辞鲍伯[1]
30

你有没有注意到,namedtuple可认为是一种简单的自定义类,可以指定属性,但是不能像类定义的类一样定义方法,因此,在考虑到如果定义一个类,类里面不需要定义方法时,其实就可以用namedtuple来代替。

这就是namedtuple的作用,你了解了吗?

看完上述内容,你们对Python最冷门的模块是什么有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

Python最冷门的模块是什么