如何使用attrs来告别Python中的样板

技术如何使用attrs来告别Python中的样板如何使用attrs来告别Python中的样板,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。在

Python中如何使用attrs告别模板,很多新手都不清楚。为了帮助大家解决这个问题,下面小编就为大家详细讲解一下。需要的人可以从中学习,希望你能有所收获。

在我们涵盖7个PyPI库的系列文章中,了解更多关于解决Python问题的信息。

Python是当今最流行的编程语言之一,因为它是开源的,用途广泛(如Web编程、商业应用、游戏、科学编程等)。),并且它有一个充满活力和专注的社区来支持它。这个社区是我们在Python包索引(PyPI)中提供如此庞大多样的软件包来扩展和改进Python的原因。并解决不可避免的问题。

在本系列中,我们将介绍七个PyPI库,它们可以帮助您解决常见的Python问题。今天,我们将学习attrs,这是一个Python包,可以帮助您快速编写简洁正确的代码。

00-1010如果您已经编写Python有一段时间了,您可能已经习惯于这样编写代码:

class book(object): def _ _ init _ _(self,ISBN,姓名,作者):self。ISBN=ISBN自身。name=nameelf。author=author然后编写一个__repr__ _函数。否则,很难记录Book的实例:

DEF _ _ REPR _ _(自我):返回一本书({自我。ISBN},{self。姓名},{自我。下一步,您将编写一个漂亮的文档字符串来记录预期的类型。但是你注意到忘记添加edition和published_year属性了,所以必须在五个地方进行修改。

如果你不必这么做呢?

@ attr . s(auto _ attribs=true)class book(object): ISBN 3360 strname 3360 strauthor : str published _ year : int edition : int使用新的类型注释语法注释类型属性,attr将检测注释并创建一个类。

国际标准书号有特定的格式。如果我们想强制这种格式呢?

@attr.s(auto_attribs=true)classbook(object):isbn:str=attr.ib()@isbn.validatordefpattern_match(self,attribute,value):m=re.match(r'^(\ d { 3 }-)\ d { 1,3}-\ d {2,3}-\ d {1,7}-\ d $ ',值)if not m : raisevalueerror(' format for issbn不正确,值)name: strauthor 3330。将* * *行更改为@ attr.s (auto _ attribs=true,frozen=true)意味着Book现在是不可变的:尝试修改属性将引发异常。相反,例如,如果我们想将发布日期设置为一年后,我们可以将其修改为attr.evolve (old _ book,published _ year=old _ book . published _ year 1)以获得一个新实例。

阅读以上内容对你有帮助吗?如果您想了解更多相关知识或阅读更多相关文章,请关注行业资讯频道,感谢您的支持。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/50253.html

(0)

相关推荐

  • 【BA4988】853B函数,未完成)

    技术【BA4988】853B函数,未完成) 【BA4988】_853B函数(未完成)反汇编:_853B()
    {A=Lcd_WriteDataX=Lcd_XY=Lcd_Y_8714() // 00E977

    礼包 2021年12月5日
  • 指针的初步学习

    技术指针的初步学习 指针的初步学习1.指针变量计算机将内存分割为字节,字节可以存储八位的信息,而每个字节都有唯一的地址。如下,如果内存中有n个字节,可以把地址看作0到n-1的数地址
    内容0  
    0101

    礼包 2021年11月15日
  • 太阳像什么的比喻句,阳光像什么比喻句简单的

    技术太阳像什么的比喻句,阳光像什么比喻句简单的1..阳光就像是一摊温暖的篝火,给我心里无限温暖太阳像什么的比喻句。2.阳光就像是一团热情的火焰,照亮我人生前进的方向。
    3.阳光像母亲温暖的手,抚摸着我们。
    4.阳光像镜子

    生活 2021年10月21日
  • 怎么深入理解JUC中的Semaphore(什么是juc)

    技术怎么深入理解JUC中的Semaphore怎么深入理解JUC中的Semaphore,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。前面我们分

    攻略 2021年12月20日
  • ps如何添加字体,ps如何添加字体样式文件

    技术ps如何添加字体,ps如何添加字体样式文件1ps如何添加字体、打开PS,新建一个图形文件,并随意输入一行文字2、把该行文字选上,点击如图中位置,可以选择字体样式、大小等。3、在右下侧图层栏把该图像选上,在图像中空白处

    生活 2021年10月20日
  • cordic的FPGA概念与算法推导是怎样的

    技术cordic的FPGA概念与算法推导是怎样的cordic的FPGA概念与算法推导是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、CORDI

    攻略 2021年11月23日