【发布时间】:2019-09-25 04:05:56
【问题描述】:
首先,我从排序的试验数据开始:
[[ 2, 4, 9, 10, 11],
[ 2, 6, 7, 8, 14],
[ 3, 6, 8, 8, 11],
[ 4, 6, 10, 11, 13],
[ 2, 3, 3, 5, 6],
[ 3, 5, 12, 12, 13],
[ 2, 2, 3, 9, 11],
[ 2, 5, 11, 11, 13],
[ 3, 5, 7, 9, 10],
[ 2, 6, 7, 8, 14]]
然后我的目标是在每个数组的位置返回一个 True 或 False,然后打印出 True(连续数组)的数量
到目前为止,我已经这样做了:
def isStraight(arr, n):
for i in range(1,n):
if (arr[i] - arr[i-1] > 1) :
return 0
return 1
但它返回一个错误提示
The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
所以我不确定如何实现另一个 for 循环来遍历内部数组。任何帮助将不胜感激。
【问题讨论】:
-
预期输出是什么?
-
如何定义数组是否连续?
-
@Chris 如果数组按顺序上升,预期的输出将是这样的 [ True True False True False] 等。例如 1 2 3 4 5 为真,但 1 5 6 3 7 为假
标签: python arrays multidimensional-array