Python中按子字符串对字符串排序

Python中按子字符串对字符串排序,python,string,sorting,substring,Python,String,Sorting,Substring,我有一个python字符串列表,如下所示: 姓名号码4位数字 我如何按最后一个数字排序 my_list = ['abc 12 34 3333', 'def 21 43 2222', 'fgh 21 43 1111'] my_list.sort(key=lambda x:int(x.split()[-1])) 我的列表现在是:['fgh 21 43 1111','def 21 43 2222','abc 12 34 3333']类似于: sort

我有一个python字符串列表,如下所示:

  • 姓名号码4位数字
我如何按最后一个数字排序

my_list = ['abc 12 34 3333',
           'def 21 43 2222',
           'fgh 21 43 1111']

my_list.sort(key=lambda x:int(x.split()[-1]))
我的列表现在是:
['fgh 21 43 1111','def 21 43 2222','abc 12 34 3333']
类似于:

sorted(your_list, lambda x: int(x.split()[-1]))

欢迎来到SO!你的描述有点不清楚。请将您的数据(或其中的一部分)准确地写在您的代码中。通常,最好解释一个解决方案,而不是仅仅发布几行匿名代码。您可以读取,并且第二个参数(可选)必须指定为关键字参数()。所以
sorted(您的_列表,key=lambda x:int(x.split()[-1]))
def sort_csv(lines=[], delim=',', position=1):
    '''
    Returns a sorted list based on "column" from csv-type data.
    '''
    return sorted(lines, key=lambda x: x.split(delim)[int(position) - 1])


test_data = [
        'part1/foo/part1/partX',
        'part3/bar/part5/partX',
        'part4/fuz/partA/partX',
        'part2/buz/part3/partX',
        ]
# Sort by third element
pprint(sort_csv(test_data, '/', 3))
#['part1/foo/part1/partX',
# 'part2/buz/part3/partX',
# 'part3/bar/part5/partX',
# 'part4/fuz/partA/partX']

test_data = [
        'abc 12 34 3333',
        'bar 53 29 AAAA',
        'def 21 43 2222',
        'foo 53 29 5555',
        'fgh 21 43 1111',
]
# Sort by last element
pprint(sort_csv(test_data, ' ', 0))
#['fgh 21 43 1111',
# 'def 21 43 2222',
# 'abc 12 34 3333',
# 'foo 53 29 5555',
# 'bar 53 29 AAAA']