如果我想要一个包含数字和单词的列表,就像这个
random_list=["h: 100", "g: 57", "k: 1", "p: 200"]
按数字排序,使其成为
["k: 1", "g: 57", "h: 100", "p: 200"]
python 3中的代码是什么?
答案 0 :(得分:4)
Python排序允许使用key
关键字来定义您自己的排序方法。以下代码适用于Python 2.7,我假设3类似:
random_list=["h: 100", "g: 57", "k: 1", "p: 200"]
sorted(random_list, key=lambda x: int(x.split()[1]))
# ['k: 1', 'g: 57', 'h: 100', 'p: 200']
答案 1 :(得分:2)
首先,这是一个错误的数据结构。你要么是列表,要么是字典。
由于您的“'列表”的内容是键值对,我猜测你需要的是字典而不是字典。字典具有可用的sorted()函数。