字典到元组:为什么它不接受所有值?
Dict to tuple : why does it not take all values?
我将字典转换为元组,因此它可以被哈希化。
DATA_ILLUMINANTS = {
'LED': tuple({
380.0: 0.006,
385.0: 0.013,
...
780.0: 0.108,})
}
当我打印元组时,没有第二列数据,它是:
(380.0, 385.0, 390.0, 395.0, 400.0, ... , 780.0)
知道为什么吗?
我在另一个代码中使用 'LED' 元组,return 出现以下错误:AttributeError: 'tuple' object has no attribute 'shape'
我想这是因为元组中缺少数据。
迭代字典(这就是 tuple()
所做的)迭代键。
你会想要 tuple({...}.items())
得到一个二元组的元组。
>>> x = {1: 2, 3: 4, 5: 6}
>>> tuple(x)
(1, 3, 5)
>>> tuple(x.items())
((1, 2), (3, 4), (5, 6))
>>>
tuple()
将遍历给定的对象,这里是一个字典。字典遍历键,这就是原因。您可以强制它迭代项目:
tuple({ 380.0: 0.006, 385.0: 0.013, ... 780.0: 0.108,}.items() )
我将字典转换为元组,因此它可以被哈希化。
DATA_ILLUMINANTS = {
'LED': tuple({
380.0: 0.006,
385.0: 0.013,
...
780.0: 0.108,})
}
当我打印元组时,没有第二列数据,它是:
(380.0, 385.0, 390.0, 395.0, 400.0, ... , 780.0)
知道为什么吗?
我在另一个代码中使用 'LED' 元组,return 出现以下错误:AttributeError: 'tuple' object has no attribute 'shape'
我想这是因为元组中缺少数据。
迭代字典(这就是 tuple()
所做的)迭代键。
你会想要 tuple({...}.items())
得到一个二元组的元组。
>>> x = {1: 2, 3: 4, 5: 6}
>>> tuple(x)
(1, 3, 5)
>>> tuple(x.items())
((1, 2), (3, 4), (5, 6))
>>>
tuple()
将遍历给定的对象,这里是一个字典。字典遍历键,这就是原因。您可以强制它迭代项目:
tuple({ 380.0: 0.006, 385.0: 0.013, ... 780.0: 0.108,}.items() )