📅  最后修改于: 2023-12-03 15:13:02.540000             🧑  作者: Mango
该错误代表着我们试图将 dict_keys
对象转换为一个列表 (list
) 时,该对象并不具备 tolist
属性。这个错误通常在使用 Python 3
的时候出现。
dict_keys
对象在 Python 中,字典的键和值(假如只取键)可以通过 dict.keys()
方法获取。返回值是一个 dict_keys
的对象,它提供了字典所有键的一个视图,以允许使用字典的键。这个字典视图属于动态视图,它会随着原字典的实时更新而实时更新。
>>> my_dict = {'apple': 1, 'banana': 2, 'orange': 3}
>>> my_keys = my_dict.keys()
>>> my_keys
dict_keys(['apple', 'banana', 'orange'])
>>> type(my_keys)
<class 'dict_keys'>
tolist
方法引发的错误当我们在将 dict_keys
转换为列表时,并不是任何时候都可以使用 tolist
方法。因为 dict_keys
对象并没有提供 tolist
方法,因此,当我们在尝试使用 tolist
方法时,就会引发这个错误。下面是这个错误的一个示例:
>>> my_dict = {'apple': 1, 'banana': 2, 'orange': 3}
>>> my_keys = my_dict.keys()
>>> my_keys.tolist()
AttributeError: 'dict_keys' object has no attribute 'tolist'
由于 dict_keys
对象并没有提供 tolist
方法,因此我们无法将它转换为列表。而正确的转换方法是使用 list
函数:
>>> my_dict = {'apple': 1, 'banana': 2, 'orange': 3}
>>> my_keys = my_dict.keys()
>>> my_list = list(my_keys)
>>> my_list
['apple', 'banana', 'orange']