我有一个包含值的一维数组,我正在尝试使用 for 循环来识别与非零元素关联的索引值。
对于下面的代码,non_zero_elements 应该包含值 0、1 和 4,但我得到的是 [1, 0, 0, 4, 0]。
我尝试引用一个类似的线程(在 Numpy 中查找非零值/索引),但无法识别我的代码中的错误。
a = [1,2,0,0,4,0]
non_zero_elements = []
i = 0
for i in a:
if a[i] != 0:
non_zero_elements.append(i)
print('The value',a[i],'in index',i,'is a non-zero element.')
i = i + 1
print('Non-zero elements: ',non_zero_elements)
Run Code Online (Sandbox Code Playgroud)