class ApiCodeMsg:
def __init__(self, code: int, message: str):
super().__init__()
self.code = code
self.message = message
def __iter__(self):
yield self.code
yield self.message
def keys(self):
return 'code', 'message'
def __getitem__(self, item):
if item == 'code':
return self.code
elif item == 'message':
return self.message
else:
raise KeyError(item)
OPEN_API_ACCOUNT_SECRET_ERROR = ApiCodeMsg(code=1001, message='授权密钥串错误')
if __name__ == '__main__':
print(*OPEN_API_ACCOUNT_SECRET_ERROR)
# 1001 授权密钥串错误 需要实现 __iter__
print({**OPEN_API_ACCOUNT_SECRET_ERROR})
# {'code': 1001, 'message': '授权密钥串错误'} 需要实现 keys,__getitem__
python自定义类解包功能
于 2023-01-31 14:35:24 首次发布