例如,输入是 2 个 numpy 数组:a = np.array([3, 8, 5]),b = np.array([6, 11, 10, 9, 17])输出是数组中的元素b,这些元素可以被 中的至少一个元素精确整除a: 6, 10, 9
2 回答
![?](http://img1.sycdn.imooc.com/54584c5e0001491102200220-100-100.jpg)
慕娘9325324
TA贡献1783条经验 获得超4个赞
基于 numpy 的解决方案可能如下:
>>> check = b[:, np.newaxis] % a == 0
>>> b[np.any(check, axis=1)]
array([ 6, 10, 9])
![?](http://img1.sycdn.imooc.com/5333a2320001acdd02000200-100-100.jpg)
慕尼黑5688855
TA贡献1848条经验 获得超2个赞
假设这些数组是一维的,您可以通过简单的列表理解来完成:
[x for x in b if any([x % y == 0 for y in a])]
添加回答
举报
0/150
提交
取消