如何使用姓氏对名字和名字进行排序

时间:2017-05-25 16:19:02

标签: python list sorting

我有一个像L=['john fwtiou','nick dallas','kostas papadopoulos']的列表 我如何按姓氏排序?权利应该是nick dallas然后是john fwtiou,然后是kostas papadopoulos

2 个答案:

答案 0 :(得分:1)

使用sorted()的简单解决方案。

>>> sorted(l, key=lambda name: name.split()[1])
['nick dallas', 'john fwtiou', 'kostas papadopoulos']

答案 1 :(得分:0)

尝试以下方法:

 L = ['john fwtiou','nick dallas','kostas papadopoulos']
 L_sorted = sorted(L, key=lambda name: name[name.find(' ')+1])
 print(L_sorted)

说明:name[name.find(' ')+1]找到空格后面的第一个字母。然后sorted函数获取列表并将其作为自定义键进行排序。