我有这个代码:
import numpy as np
X = np.array([[-3, 0, -4], [2, -4, 2], [-2, -2, -2]])
print(X)
生成
[[ -3 0 -4]
[ 2 -4 2]
[-2 -2 -2]]
现在,通过上面的矩阵,我只想打印该矩阵/数组中所有正数元素。
我试过了
for i in X:
if i>0
print(i)
但这会产生语法错误。
最佳答案
试试这个:
for i in np.nditer(X):
if i>0:
print(i)
您遇到错误,因为 if
语句后缺少分号,并且 i
变量是矩阵的一行而不是元素。
如上所述here , nditer
返回一个高效的多维迭代器对象来迭代数组的元素。
使用简单条件进行迭代的另一种方法是:
for i in X[X>0]:
print(i)
关于python - 关于仅打印矩阵中某些值的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55854669/