我使用一个工具将我的代码从Python2重新格式化为Python3。它总是做的一件事是替换
my_dict.items()
由
list(my_dict.items())
这背后的动机是什么?我假设items()
不保证排序(它是随机的,因为字典不是有序的(。因此,通过使用list
我们对key, value
对进行排序。
我的假设正确吗?
3.x 中list
的keys()
、values()
和items()
方法返回视图而不是列表,因此为了保留它们的 2.x 行为,我们需要将视图转换为列表。
如果不需要这种旧行为(例如,我们只迭代结果(,则可以删除对list()
的调用。