国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > Python常见问题 > python的attrs表示什么

python的attrs表示什么

attrs

头像

silencement

2019-10-25 16:28:0612282浏览 · 0收藏 · 0评论

attr可看作是一个类装饰器但又不仅仅是简单的装饰器,他使得我们编写类变得更加简单轻松。下面先通过一个简单的例子来见识下attr的强大吧。
现在我们需要编写一个类,有a,b,c两个属性,正常的写法:

class A(object):
    def __init__(self, a, b, c):
        self.a = a        self.b = b        self.c = c

看起来也没那么复杂嘛。好了,现在领导说类的打印输出不好看,又不能进行比较,行吧,有需求就加吧。

from functools import total_ordering@total_orderingclass A(object):
    def __init__(self, a, b, c):
        self.a = a        self.b = b    def __repr__(self):
        return "ArtisanalClass(a={}, b={})".format(self.a, self.b)

    def __eq__(self, other):
        if not isinstance(other, self.__class__):
            return NotImplemented
        return (self.a, self.b) == (other.a, other.b)

    def __lt__(self, other):
        if not isinstance(other, self.__class__):
            return NotImplemented
        return (self.a, self.b) < (other.a, other.b)

虽然看起来有点复杂,但是借助total_ordering,也算是以尽量少的代码实现了所需功能了吧。
但是,有没有更简洁的方式呢?让我们来看看借助于attr的实现:

import attr

@attr.sclass A(object):
    a = attr.ib()
    b = attr.ib()

更多学习内容,请点击Python学习网

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

蜜桃成时熟2| 爱的健身房| 《军妓肉体》在线观看| 兄弟的母亲中字ID| 99YE| 大雷QQ弹弹摇晃| 《准儿媳》在线观看完整版免费 | 孕妇| 免费网站在线观看人数在哪省| 《女朋友的妹妹3》| 屈从| 茉莉花| 一家乱战60集全播放免费观看| 强壮公妇公侵HD中字小说| 瑜伽馆里的私密按摩效果怎么样| 母亲和女婿免费高清电视剧| 门卫老头吸允校花奶头| 黏糊糊的你12集免费观看| B站未过审的跳舞视频| 美国禁忌2在线观看电视剧| 啵啵浏览器| AVI 视频| 狠狠的鲁五月| 小蜜桃免费观看高清电视剧| 妈妈がだけの心に漂う| 夹心玩具BY笔趣阁| 小泽玛利亚| 无人区与二线无人区的区别| 星空传媒天美传媒有限公司| 国产-区二区| 《老板娘2》完整版| 中国时装秀视频| 女孩发育图片(真人)| 国外黄冈站刺激战场| 亚洲尺码与欧洲尺码区别专线| 69精品久久久久久久精品A片| 妈妈装睡配合孩子阴阳调和| 韩国漫画免费漫画页面浸画弹窗| 我把校花嘴巴当套子的小说| 私处按摩SPA养生精油| 久久久久久精品免费观看黑人动漫