<分区>
我使用一种工具将我的代码从 Python2 重新格式化为 Python3。它总是做的一件事是替换
my_dict.items()
通过
list(my_dict.items())
背后的动机是什么?我假设 items()
不保证排序(它是随机的,因为字典没有排序)。因此,通过使用 list
,我们对 key, value
对进行排序。
我的假设是否正确?
<分区>
我使用一种工具将我的代码从 Python2 重新格式化为 Python3。它总是做的一件事是替换
my_dict.items()
通过
list(my_dict.items())
背后的动机是什么?我假设 items()
不保证排序(它是随机的,因为字典没有排序)。因此,通过使用 list
,我们对 key, value
对进行排序。
我的假设是否正确?
最佳答案
3中list
的keys()
、values()
和items()
方法。 x 返回 View 而不是列表,因此为了保留它们的 2.x 行为,我们需要将 View 转换为列表。
如果不需要这种旧行为(例如,我们只对结果进行迭代),则可以删除对 list()
的调用。
关于python - 为什么 Python2 到 Python3 转换器将 "items()"放入 "list"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48093038/