Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从最小键到最大键遍历dict_Python_Sorting_Dictionary - Fatal编程技术网

Python 从最小键到最大键遍历dict

Python 从最小键到最大键遍历dict,python,sorting,dictionary,Python,Sorting,Dictionary,我有这样一句话: my_dict = {'hello':'2' , 'foo':'1' , 'foobar':'3'} 我不想以任何方式修改dict,我只想遍历它,从最小大小的键到最大大小的键,就像这样 for key in my_dict: print(my_dict[key]) # Results # 1 # 2 # 3 您可以使用以下代码段 for key in sorted(my_dict, key = len): print my_dict[key] 1 2 3

我有这样一句话:

my_dict = {'hello':'2' , 'foo':'1' , 'foobar':'3'}
我不想以任何方式修改dict,我只想遍历它,从最小大小的键到最大大小的键,就像这样

for key in my_dict:
    print(my_dict[key])

# Results
# 1
# 2
# 3

您可以使用以下代码段

for key in sorted(my_dict, key = len):
    print my_dict[key]
1
2
3

上面的
len
是函数,这意味着my_dict.keys()中的所有条目都将按长度排序,然后打印它们的值

您的意思是按键的长度排序吗?然后
对于已排序的键(my_dict,key=len):
我不是在尝试按值排序,我是在尝试按键的长度排序,请重新打开问题。@gnibler谢谢gnibler这很有效,我愿意接受你的回答,但这个问题被毫无理由地标记为重复…@Ogen在这种情况下,只需将
dict1替换为
len
,在这个答案中:啊!gnibbler已经发布了。@AshwiniChaudhary如果其他用户想要实现我正在做的事情该怎么办。对他们来说,只搜索这个问题比搜索相关的问题然后连接点更方便。
.keys()
调用是不必要的,它将在Python 2中创建一个列表。