python - 如何从while循环中获取所有价值而不仅仅是第一次迭代?
问题描述
最后一个是 4 行的 numpy 数组,我需要从嵌套的 while 循环中获取所有值,但是这段代码只返回最终的第一行或循环的第一次迭代。
def amir2 (final):
i = 0
j = 0
temp = []
temp2 = []
temp3 = []
while i < len(final):
while j < len(final):
cos_lib = coss(final[i] , final[j])
temp.append(cos_lib)
j += 1
temp2.append(temp)
i += 1
return temp2
解决方案
您需要提供有关 numpy 数组的确切格式的详细信息,final
以及您在循环中尝试使用该coss
方法执行的操作。
如果 final 是这样定义的:
final = np.array([[1,2,3],[1,2,3],[1,2,3]], dtype=np.float64)
您可以使用 获取数组,.shape
因此您可以遍历数组的所有元素,如下所示:
for x in range(0, final.shape[0]):
for y in range(0, final.shape[1]):
print final[x, y]
推荐阅读
- python - 用于单词搜索的递归函数
- python - 获取二进制数据的字节大小(python3.6)
- regex - RegEx 匹配不在我的域中的 URL
- bash - Bash 源命令不适用于“curl”
- matlab - 插值 - 谁能更好地解释它?
- inheritance - TortoiseSVN:我可以停止 svn:ignore 属性的继承吗?
- java - 横向布局不适用
- javascript - 如何选择第一个/默认
- java - 如何从文本文件创建矩阵 3x3
- php - MySQL SSH console runs subquery correctly but mysqli returns zero for subquery column