python列表小括号中括号问题

['13,910,2', '0,912,1', '0,914,3', '2,918,4', '1,915,6']
print(sorted(greens,key=(lambda x:x[2])))
我按照每个元素第三个值来排序.但排序是错误的.我想应该是需要在每个元素在加一个小括号或者中括号才能排序.需要怎样添加如[['13,910,2'],['13,910,2'],[ '0,912,1'], ['0,914,3'], ['2,918,4'], ['1,915,6']]

阅读 3.9k
3 个回答
greens=['13,910,2', '0,912,1', '0,914,3', '2,918,4', '1,915,6']
print(sorted(greens,key=(lambda x:int(x.split(',')[-1]))))

这个意思?

遍历添加列表

>>> ls=['13,910,2', '0,912,1', '0,914,3', '2,918,4', '1,915,6']
>>> ls=[tuple(int(n)for n in s.split(','))for s in ls]
>>> ls
[(13, 910, 2), (0, 912, 1), (0, 914, 3), (2, 918, 4), (1, 915, 6)]
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题