【发布时间】:2015-07-17 00:22:18
【问题描述】:
我有一个列表users_with_invites_ids_list,由循环形成,我将值附加到列表中,在 python 中如下所示:
...[ObjectId('55119e14bf2e4e010d8b48f2')], [ObjectId('54624128bf2e4e5e558b5a52')], [ObjectId('53a6e7bc763f4aa0308b4569')], [ObjectId('55241823bf2e4e59508b494c')]]
当我尝试时:
users_with_invites_ids_set = set(users_with_invites_ids_list)
我明白了:
TypeError: unhashable type: 'list'
如何将此列表列表转换为集合?
编辑
根据回答,我做了以下事情:
#convert list to set
first_tuple_list = [tuple(lst) for lst in users_with_invites_ids_list]
users_with_invites_ids_set = set(first_tuple_list)
产生以下结果:
(ObjectId('542ac5a6763f4a82188b4a51'),), (ObjectId('54496fe6bf2e4efe348bd344'),), (ObjectId('54c96339bf2e4ee62c8b48e0'),)])
如何在没有() 的情况下获得每个ObjectId。它使我无法将此集合与其他 ID 集合进行比较。
【问题讨论】: