Skip to main content
 首页 » 编程设计

python之我如何使用字典来转换 python 中的数组

2025年05月04日13mate10pro

作为玩具示例,假设我有:

import numpy as np 
 
np.array([['dog','sheep','sheep','dog','cat'],  
          ['dog','dog','sheep','cat','cat']]) 
dict = {'dog':5,'cat':1,'sheep':3} 

我想找到一种有效的方法来构造我根据字典替换元素的所需数组。

(真正的字典是元素周期表,真正的数组有几千个元素)

请您参考如下方法:

您可以向量化字典的get方法。

>>> import numpy as np 
>>> a = np.array([['dog','sheep','sheep','dog','cat'],  
...               ['dog','dog','sheep','cat','cat']]) 
>>> d = {'dog':5,'cat':1,'sheep':3} 
>>>  
>>> np.vectorize(d.get)(a) 
array([[5, 3, 3, 5, 1], 
       [5, 5, 3, 1, 1]]) 

我已将 dict 重命名为 d 因为你不应该用你自己的变量隐藏内置名称 dict。