假设我有这个列表:"('Jeff',8)","('Louis',9)","('Deandre',5)“,”我希望能够在控制台确切地显示如下:
(Deandre,5)
(杰夫,8岁)
(路易,9岁)
所以元组的第二个元素按升序排列(5,8,9.)
我试过这样的方法:
排序(mylist,key=lambda x: x1)
但没什么..。
发布于 2022-11-03 21:42:08
首先使用ast.literal_eval将字符串解析为元组,然后排序:
from ast import literal_eval
lst = ["('Jeff', 8)", "('Louis', 9)", "('Deandre', 5)"]
out = sorted(map(literal_eval, lst), key=lambda x: x[1])
print(*out)指纹:
('Deandre', 5) ('Jeff', 8) ('Louis', 9)https://stackoverflow.com/questions/74309820
复制相似问题