python - 如何将列表排序为按数字降序排列:
问题描述
我需要能够按降序对值进行排序。这是我的输出,它是一个列表形式,
Eutherian - Bat - Microbat : 28
Avian - Other : 203
Marsupial - Macropod : 14
Eutherian - Bat - Flying Fox : 25
Reptile - Lizard : 28
Avian - Waterbird : 19
Marsupial - Koala : 13
Marsupial - Possum/Glider : 50
Reptile - Snake - Terrestrial : 18
Amphibian - Native Frog : 2
Reptile - Turtle - Freshwater : 3
Marsupial - Dasyurid : 4
Marsupial - Bandicoot : 4
Avian - Seabird/Pelican : 5
Avian - Raptor : 3
Reptile - Snake - Marine : 1
Reptile - Turtle - Marine : 2
我尝试过使用拆分功能,但我无法让它工作,我尝试过使用元组?我是一个完整的初学者
我想要达到的结果是让最多的报告最坏,然后制作一个饼图来显示这个
解决方案
如果您有 1 个要拆分为行列表的大字符串,则将每行拆分为一个元组("Eutherian - Bat - Microbat", 28)
,如第二项为整数,然后按整数值降序排序:
lines = """
Eutherian - Bat - Microbat : 28
Avian - Other : 203
Marsupial - Macropod : 14
""".strip().split('\n')
tuples = []
for l in lines:
k, v = l.split(' : ')
tuples.append((k, int(v)))
sorted_tuples = sorted(tuples, key=lambda item: item[1], reverse=True)
for k, v in sorted_tuples:
print(k, ":", v)
输出:
Avian - Other : 203
Eutherian - Bat - Microbat : 28
Marsupial - Macropod : 14
推荐阅读
- javascript - 如何编写只允许“[a-z0-9]”唯一字符的正则表达式?
- sql - 如果 PostgreSQL 没有变化,事务是否记录到 WAL?
- python - ImportError:libGL.so.1:无法打开共享对象文件:没有这样的文件或目录 cv2
- python - 引发errors.InterfaceError(ERR_NO_RESULT_TO_FETCH)mysql.connector.errors.InterfaceError:没有要从中获取的结果集
- bash - 如何将结果附加到 shell 脚本中的列中
- javascript - javascript过滤器函数 - 回调函数问题
- java - 如何在android studio中共享tts和音频文件
- r - colnames() 不能在 dplyr 中使用
- javascript - 使用 UNCHECKED 复选框,如何过滤掉 NSFW 标记的 div 以始终隐藏,但在选中时,遵循可见性规则?
- data-structures - B+树盘实现