对于Web应用程序,我想要一个可提升的dict
。
from json import dumps
class RaiseableDict(dict, Exception): pass # This won't work.
# I want this to work without change:
try:
raise RaiseableDict(message='Some message text.')
except RaiseableDict as rd:
rd['key'] = 'value'
rd.update({'error_code': 42})
dumps(rd)
如何避免
TypeError: multiple bases have instance lay-out conflict
并具有一些类似于dict
的可引发异常,可以直接将其转储为JSON,而无需访问异常子类的特殊属性或使用json.dumps
的{{1} }论点?