擅长:python、mysql、java
<p>在这里</p>
<pre><code>>>> l
[['2017-11-09', 21], ['2017-11-14', 39], ['2017-11-13', 43], ['2017-11-10', 37], ['2017-11-09', 100], ['2017-11-09', 1]]
</code></pre>
<p>使用<code>sorted</code>对字符串排序,而不是对日期排序,还考虑子列表的所有项</p>
<pre><code>>>> sorted(l)
[['2017-11-09', 1], ['2017-11-09', 21], ['2017-11-09', 100], ['2017-11-10', 37], ['2017-11-13', 43], ['2017-11-14', 39]]
</code></pre>
<p>但是我们只需要考虑第一项(dateobject)</p>
<pre><code>>>> sorted(l,key=lambda x:datetime.strptime(x[0],'%Y-%m-%d'))
[['2017-11-09', 21], ['2017-11-09', 100], ['2017-11-09', 1], ['2017-11-10', 37], ['2017-11-13', 43], ['2017-11-14', 39]]
</code></pre>
<p>或者更简单</p>
<pre><code>>>> from operator import itemgetter
>>> sorted(l,key=itemgetter(0))
[['2017-11-09', 21], ['2017-11-09', 100], ['2017-11-09', 1], ['2017-11-10', 37], ['2017-11-13', 43], ['2017-11-14', 39]]
</code></pre>