J. *_*one 0 python arrays sorting list python-3.x
我该如何排序这个清单
list1 = ['John, 35.60', 'Alf, 200.13', 'Greg, 62.76', 'Paul, 555', 'George, 123.6', 'Colin, 35.60', 'Phil, 23', 'Bret, 200.13']
Run Code Online (Sandbox Code Playgroud)
进入这个列表
list2 = ['Phil, 23', 'John, 35.60', 'Colin, 35.60', 'Greg, 62.76', 'George, 123.6', 'Alf, 200.13', 'Bret, 200.13', 'Paul, 555']
Run Code Online (Sandbox Code Playgroud)
基本上,我有一个列表,每个元素都是这样的[customerName, orderPrice].我想创建一个函数,它可以采取任何列表,list1并输出一个list(list2)与那些相同的元素,除了它的顺序orderPrice
sort接受key您可以输入功能的关键字; 该函数的结果用于排序:
list1 = ['John, 35.60', 'Alf, 200.13', 'Greg, 62.76', 'Paul, 555',
'George, 123.6', 'Colin, 35.60', 'Phil, 23', 'Bret, 200.13']
srt = sorted(list1, key=lambda x: float(x.split(',')[1]))
print(srt)
# ['Phil, 23', 'John, 35.60', 'Colin, 35.60', 'Greg, 62.76',
# 'George, 123.6', 'Alf, 200.13', 'Bret, 200.13', 'Paul, 555']
Run Code Online (Sandbox Code Playgroud)
我使用的(无名)函数将你的字符串拆分为,,取正确的字符串部分并返回float它.
| 归档时间: |
|
| 查看次数: |
65 次 |
| 最近记录: |