我正在尝试在我的类上创建一个方法,该方法将只返回公共属性作为字典。我在语法上苦苦挣扎。这是我尝试失败的方法:
@attr.s
class C:
x = attr.ib()
_y = attr.ib()
def _no_privates(a, _):
return not a.name.startswith("_")
def public_properties_to_dict(self):
return attr.asdict(self, filter=attr.filters.include(_no_privates))