您好我正在Python中使用sorted()函數來訂購一個bi-dimensionnal數組(我想按照它可以在經典電子表格中完成的那樣對列進行排序)。在Python中排序和空字符串
在下面的示例中,我使用itemgetter(0)根據第一列的內容對網格進行排序。
但排序後返回非空的字符串之前的空字符串。
>>> import operator
>>> res = [['charly','male','london'],
... ['bob','male','paris'],
... ['alice','female','rome'],
... ['','unknown','somewhere']]
>>> sorted(res,key=operator.itemgetter(0))
[['', 'unknown', 'somewhere'], ['alice', 'female', 'rome'], ['bob', 'male', 'paris'], ['charly', 'male', 'london']]
>>>
,而我需要它返回此:
[['alice', 'female', 'rome'], ['bob', 'male', 'paris'], ['charly', 'male', 'london'], ['', 'unknown', 'somewhere']]
有一個簡單的方法來做到這一點?
我正準備寫這個答案,這是最優雅的方式。元組來「推廣」你的關鍵字母表,而不用修改任何你不想要的東西。 – ninjagecko 2012-02-21 23:06:19
作品非常好,非常感謝! – florian 2012-02-22 09:27:10