擅长:python、mysql、java
<p>或者您可以只收集一组错误代码对象,因为这不太可能成为性能瓶颈:</p>
<pre><code>errors = [Error1, Error2, Error3, ...]
def lookupError(number=None, text=None, matcher=None, multiple=False):
if number!=None:
matcher = lambda x:x.number==number
if text!=None:
matcher = lambda x:text in x.text
results = [e for e in errors if matcher(e)]
if multiple:
return results
else:
assert len(results)==1, 'Error lookup failed, expected one error but got {}'.format(results)
return results[0]
</code></pre>
<p>用法:</p>
^{pr2}$