首页 > 解决方案 > 是否有理由解开列表然后将其放回列表中?

问题描述

我试图理解以下 Python 行:
result = {'key_A': [*dict_A.keys()], 'key_B': "dummy_string"}
Result 是包含 Result['key_A'] 中的列表和 Result['key_b'] 中的字符串的字典。但我不确定为什么 dict_A.keys() 必须被解包,只是再次放入列表中。这种额外的拆包操作是否有原因?

标签: pythonlistpacking

解决方案


在 Python 3.keys中不返回列表,而是返回一个dict_keys对象,因此如果list需要它必须进行转换。

[*dict_A.keys()]相当于list(dict_A.keys())


推荐阅读