我最初有一个列表列表,我想创建一个带有键的字典作为这些列表列表,但我知道列表不能散列。所以我尝试将外部列表转换为元组,然后对其进行散列,但编译器仍然显示TypeError: unhashable type: 'list'
。所以我想知道是否有任何方法可以使用x
创建y
,其中x
如下?:
x = ([0, 0], [1, 1], [2, 0], [3, 1])
y = {}
y[x] = 1
print('y: ', y)
您可以将内部列表制成元组,这将使整个密钥不可变:
x=[[0, 0], [1, 1], [2, 0], [3, 1]]
key = tuple(tuple(l) for l in x)
y={}
y[key]=1
print('y: ',y)
# y: {((0, 0), (1, 1), (2, 0), (3, 1)): 1}