如何用字符串和numpy数组形成字典?

时间:2019-04-02 09:28:43

标签: python dictionary

如何交换我的 component(props) function1(params){ } function2(params){ } render(){ props.places.map((place, i) => { return ( <div onMouseOver={() => {props.function1(i);props.function2(i)}} ) }) }的键值对,其中键是字符串,值是dict数组

numpy

现在我需要这样的输出

word2index = {'think': array([[9.56090081e-05]]), 
              'apple':array([[0.00024469]])}

2 个答案:

答案 0 :(得分:3)

Why Lists Can't Be Dictionary Keys

  

要用作字典键,对象必须支持哈希   函数(例如,通过哈希),相等性比较(例如,通过    eq cmp

     

也就是说,为什么列表不能用作字典的简单答案   关键是列表没有提供有效的 hash 方法。

但是,使用列表的string representation

word2index = {'think': [9.56090081e-05], 'apple': [0.00024469]}
print({repr(v):k for k,v in word2index.items()})

输出

{'[9.56090081e-05]': 'think', '[0.00024469]': 'apple'}

OR

将列表转换为元组:

print({tuple(v):k for k,v in word2index.items()})

输出

{(9.56090081e-05,): 'think', (0.00024469,): 'apple'}

答案 1 :(得分:0)

我不确定是否可以将numpy数组设置为dict键,但是您可以使用以下代码来互换disct键和值:

index2word = {value:key for key, value in word2index.items()}