Python的Numpy库做向量化运算

Numpy的数据格式是ndarray,可以直接执行向量化运算,比如:

import numpy as np
a = np.array([2, 4, 6])
print(a**2)

array([ 4, 16, 36], dtype=int32)

但是,如果想直接对b = ['成景', '处理品', '府曹', '白冠牦缨', '变更']进行每一个字符长度的统计,可以考虑for循环或列表推导式:

b = ['成景', '处理品', '府曹', '白冠牦缨', '变更']
for i in b:
    print(len(i))

2
3
2
4
2

## 或者
[len(i) for i in b]

[2, 3, 2, 4, 2]

那么numpy库是否提供直接提供向量化操作的方法?

np_len = np.vectorize(len)
np_len(b)  # 计算词语的长度

array([2, 3, 2, 4, 2])

 

你可能感兴趣的:(Python的Numpy库做向量化运算)