我有一些带有整数的数组和 for 循环。我正在尝试测试数组中的某些特定元素是否大于或小于某个整数。这段代码解释得更好:
array = [1,2,3,4,5]
for i in range(5):
if array[i] >= 3:
print(sometext)
else:
print(othertext)
但是我得到了一个 ValueError:具有多个元素的数组的真值不明确。使用 a.any() 或 a.all()
解决方案:我确实正确缩进了它。上面只是我的代码的简化(一些愚蠢的例子)。 我找到了错误所在。这是因为我用 numpy 初始化了数组
a = numpy.empty(5)
而不是这样的:
a = [0 for i in range(5)]
谢谢大家的帮助
您应该迭代数组本身:
array = [1, 2, 3, 4, 5]
for item in array:
if item >= 3:
print("yes")
else:
print("no")
它对我来说是有适当意图的:
>>> array = [1,2,3,4,5]
>>> for i in range(5):
... if array[i] >= 3:
... print("Yes")
... else:
... print("No")
...
您收到的错误基本上是由于缩进造成的。 Python 严格遵循缩进,这意味着它只会执行在该特定块中编写的代码。有关更多详细信息,请参阅Python 缩进规则。 谢谢。祝您编码愉快。
这并不是真正执行您所描述的操作的最Pythoninc方式。
array = [1,2,3,4,5]
for element in array:
if element >= 3:
print("Yes")
else:
print("No")
我尝试了一下
array = [1,2,3,4,5]
x1 = (array[0])
x2= (array[1])
x3= (array[2])
x4= (array[3])
x5= (array[4])
if x1 <= x2:
print("very good")
else:
print("also good")
怎么样?