我需要在字典下面排序,并打印排序字典中的前五项:
station_dict_platOne = {'6': 'Daly City', '12': 'Daly City', '19': 'Daly City', 'Leaving': 'Millbrae', '16': 'SF Airport', '28': 'Millbrae', '10': 'SF Airport', '22': 'SF Airport'}
我正在使用以下代码:
j=0
for i in sorted(station_dict_platOne):
if j<5:
print(i+" "+"min", station_dict_platOne[i])
j = j+1
但是,我得到低于输出,这不是正确的输出
10 min SF Airport
12 min Daly City
16 min SF Airport
19 min Daly City
22 min SF Airport
如果删除“离开”键,则可以执行以下操作:
哪些产出:
我不知道这是不是你想要的
您的错误可能不在代码中,而是在键入: 键是字符串(文本)而不是整数(数字),所以
'10' < '6' == True
要么对键使用数字(只使用
6: 'Daly City'
,不带引号),要么在排序时解析它们(在for循环中调用sorted(station_dict_platOne, key=lambda t: int(t))
)注意:使用“离开”键,两种方式都将失败。你必须过滤它,或者使用一些特殊情况
相关问题 更多 >
编程相关推荐