擅长:python、mysql、java
<p>一个简单的密钥包装器将完成这项工作:</p>
<pre><code>class DateKey(object):
def __init__(self, invoice):
self.value = invoice.date
def __lt__(self, other):
if not isinstance(other, (datetime.date, type(None))):
return NotImplemented
elif self.value is None:
return True
elif other.value is None:
return False
else:
return self.value < other.value
</code></pre>
<p>然后使用它:</p>
<pre><code>invoices_list.sort(key=lambda i: DateKey(i))
</code></pre>