Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/276.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.items()返回的列表中元素的顺序是否始终相同?_Python_Dictionary - Fatal编程技术网

Python dict.items()返回的列表中元素的顺序是否始终相同?

Python dict.items()返回的列表中元素的顺序是否始终相同?,python,dictionary,Python,Dictionary,我使用的递归代码如下所示: def dfs(self, hash_map): ans = 1 for key,value in hash_map.items(): if value > 0: hash_map[key] = hash_map[key] - 1 ans = ans + self.dfs(hash_map) hash_m

我使用的递归代码如下所示:

    def dfs(self, hash_map):
        ans = 1
        for key,value in hash_map.items():
            if value > 0:
                hash_map[key] = hash_map[key] - 1
                ans = ans + self.dfs(hash_map)
                hash_map[key] = value 
        return ans

那么字典中items()方法返回的列表是否会保留顺序?

不一定,这取决于您使用的Python版本。退房

从文档中:

有序词典与普通词典一样,但也有一些不同之处 与订购操作相关的额外功能。他们已经成为 由于内置的dict类获得了 记住插入顺序(这种新行为在 Python 3.7)


如果您依赖于Python字典或集合中键的顺序,那么就不要这样做。Python使用哈希表来实现这些类型,它们的顺序取决于插入和删除历史以及随机哈希种子

有关该事实的更多详细信息,请参见:

看看这是否回答了您的问题: