嗨我需要在 forloop 中排序一个int值,我在终端上运行它,下面是代码
match = myworld.objects.filter(series=1)
for i in match:
print i.w
结果如
34
32
24
39
32
33
36
33
23
34
38
38
32
31
30
34
30
30
31
36
31
35
33
43
请告诉我如何对它们进行排序,以便我可以更低到更高或更高以降低 感谢
答案 0 :(得分:3)
从低到高
from operator import attrgetter
for i in sorted(match, key=attrgetter('w')):
从高到低
for i in sorted(match, key=attrgetter('w'), reverse=True):
如果您不需要这些对象,您也可以只对您感兴趣的属性进行排序
for i in sorted(x.w for x in match):
答案 1 :(得分:1)
for i in sorted(match, key=lambda x: x.w):
Sorted可以通过一个关键函数来了解排序的内容,在您的情况下,匹配中每个项目的w属性。