【发布时间】:2023-03-15 06:11:01
【问题描述】:
当一个嵌套的for循环的范围达到外部for循环的当前迭代时,如何避免多个嵌套的for循环?例如,考虑以下代码:
此程序从列表 arr 返回一个三元组,例如 arr[i] - arr[j] = arr[j] - arr[k] = d 和 i<j<k。
d =3
arr = [1, 2, 4, 5, 7, 8, 10]
list1 = []
for biggest in range(0, len(arr)):
for bigger in range(0, biggest):
for big in range(0, bigger):
if abs(arr[big] - arr[bigger]) == d and abs(arr[bigger] - arr[biggest]) == d:
list1.append([arr[big], arr[bigger], arr[biggest]])
print(list1))
除了使用多个嵌套循环还有其他替代方法吗?
【问题讨论】:
-
如果您的代码有效(似乎是这种情况),那么这里就是 OT,您想在 codereview 上重新发布。否则请具体说明问题所在。
-
我认为这个问题在这里和代码审查无关,因为他正在寻找代码中的一项特定改进,而不是对所有方面的普遍忽视。
标签: python for-loop nested-loops