【发布时间】:2021-05-05 08:54:26
【问题描述】:
我正在学习 Python 并尝试一次比较多个数组/列表的元素,我的数组是 Numpy 数组(我猜?),就像我在 the following 创建它们时所做的那样,答案提到输出为 numpy数组
我总共有 3 个长度为 40 的数组,我想做的是遍历它们并检查同一索引处的元素是否相等,在 Java 等编程语言中,我可以使用以下方法轻松完成此操作:
for (int i=0;i<40; i++)
if(array1[i]==array2[i]==array3[i]
//do whatever
但是我在执行此操作时遇到了麻烦,因为有关遍历数组的教程将是这样的:
for x in arr:
\\do work
没有参考索引,任何帮助将不胜感激
更新:为了更清楚,我使用链接的答案将带有字符串的 csv 文件导入到 numpy 数组中,所以我的数组元素是字符串
这是 print(array) 的输出,我有 3 个
【问题讨论】:
-
for i, x in enumerate(arr):是获取索引和项目的好方法。如果您只需要索引for i in range(len(arr)):,但如果您只想迭代一个list(这就是您所谓的“数组”的真实名称),那将被认为是“unpythnic”。 -
但更好的实现将是
for ar1element, ar2element, ar3element in zip(array1, array2, array3) -
当您尝试将
how does a for loop work in python放入搜索引擎时发生了什么?或者寻找并遵循任何类型的教程?或者远程类似的东西?如果你不明白如何做这样基本的事情,你为什么要尝试使用像 Numpy 这样复杂的库? -
您似乎知道
iterate这个词,并且您知道您想要做的是并行遍历 Numpy 数组。因此,也许您可以在此基础上尝试更量身定制的搜索。