from dataclasses import dataclass
@dataclass
class Car:
brand: str
color: str
def asdict(o, skip_empty=False):
return {k: v
for k, v in o.__dict__.items()
if not (skip_empty and v is None)}
if __name__ == '__main__':
c = Car(brand='BMW', color=None)
print(asdict(c, skip_empty=False))
print(asdict(c, skip_empty=True))
另一个选择是编写一个dict工厂,它将拒绝添加None值并将其传递给
asdict
方法。 在此处签出代码源https://github.com/python/cpython/blob/master/Lib/dataclasses.py给你:
哪个打印:
^{pr2}$相关问题 更多 >
编程相关推荐