utils.py 文件源码

python
阅读 18 收藏 0 点赞 0 评论 0

项目:trip-based-public-transit-routing-algo 作者: mk-fg 项目源码 文件源码
def attr_struct(cls=None, vals_to_attrs=False, defaults=..., **kws):
    if not cls:
        return ft.partial( attr_struct,
            vals_to_attrs=vals_to_attrs, defaults=defaults, **kws )
    try:
        keys = cls.keys
        del cls.keys
    except AttributeError: keys = list()
    else:
        attr_kws = dict()
        if defaults is not ...: attr_kws['default'] = defaults
        if isinstance(keys, str): keys = keys.split()
        for k in keys: setattr(cls, k, attr.ib(**attr_kws))
    if vals_to_attrs:
        for k, v in vars(cls).items():
            if k.startswith('_') or k in keys or callable(v): continue
            setattr(cls, k, attr.ib(v))
    kws.setdefault('hash', not hasattr(cls, '__hash__'))
    kws.setdefault('slots', True)
    return attr.s(cls, **kws)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号