我希望我的数组通过两个条件。如果我尝试只使用一个我没有任何问题,但如果我将代码两个条件python崩溃。这是我的代码:
std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
答案 0 :(得分:1)
应该是np.logical_and(A_1 < cond1, A_1 > cond2)
如果您想检查所有元素是否满足,只需np.all(np.logical_and(A_1 < cond1, A_1 > cond2))
cond2 > A_1 < cond1
无法正常工作,因为cond2 > A_1
会返回一个bool数组。根据您的描述,不需要将布尔值与cond1
进行比较。要明确,可以使用np.logical_and
。
答案 1 :(得分:1)
这是一个随机的例子:
import numpy as np
np.random.seed(123456)
array = np.array(np.random.randn(12))
print((array < 1) & (array > 0))
numpy你必须把条件放在括号中,然后使用&amp;操作员和条件。对于某个或某个条件,您使用|运算符然后遵循相同的格式。这将为您提供一组布尔值。