[英]sorting dict values without sorted function in Python
我想在不使用排序功能的情况下对列表中的字典值进行排序。我在下面尝试过,但不起作用
dict1={"one":1,"two":2,"three":3}
list1=[]
for i in range(len(dict1)):
sml=[a for a in dict1.values() if a ==min(dict1.values())]
key1=[k for k,v in dict1.items() if v ==min(dict1.values())]
del dict[key1]
list1.append(sml)
print(list1)
您的方法差不多了。 您唯一的错误是线条
sml=[a for a in dict1.values() if a ==min(dict1.values())]
key1=[k for k,v in dict1.items() if v ==min(dict1.values())]
实际上使sml
和key1
列表具有第一个包含最小值的键作为唯一元素,而第二个包含最小键的键作为唯一元素。
(即使只有一个元素,语法x = [....]
也会使x
成为列表)。
因此,将这些行固定为:
sml=[a for a in dict1.values() if a ==min(dict1.values())][0]
key1=[k for k,v in dict1.items() if v ==min(dict1.values())][0]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.