我有一个代表元组的字符串列表,如下所示:
['(q2,0)', '(q3,0)', '(q0,0)', '(q1,0)', '(q4,0)']
有没有办法通过访问每个 q 之后的数字来对其进行排序,以便列表看起来像这样:
[ '(q0,0)', '(q1,0)', '(q2,0)', '(q3,0)', '(q4,0)']
如果这些是整数会很容易,但是我需要保持现在的字符串格式...
最佳答案
您可以根据您定义的键进行排序:
def my_key(value):
return int(value.strip('()').split(',')[0][1:])
用法:
>>> values = ['(q2,0)', '(q3,0)', '(q0,0)', '(q1,0)', '(q4,0)']
>>> values.sort(key=my_key)
['(q0,0)', '(q1,0)', '(q2,0)', '(q3,0)', '(q4,0)']
关于python - 如何对表示元组的字符串列表进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42652350/