Python中数组元素在if语句中

2024-10-05 14:23:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一些整数数组,还有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)]

谢谢大家的帮助


Tags: 代码innumpy元素forifrange整数
3条回答

您应该遍历数组本身:

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 Indentation Rule。 谢谢您。快乐的编码。

相关问题 更多 >