为什么我不能在数组中找到元组的位置?毕竟,底部表达式打印True
foo = numpy.array([(5, 30), (5,), 5])
bar = numpy.where(foo==foo[0])
print(bar)
打印(array([], dtype=int64),)
print((5,30)==foo[0])
打印True
答案 0 :(得分:2)
因为:
import numpy
foo = numpy.array([(5, 30), (5,), 5])
bar = numpy.where(foo==foo[0])
print(foo==foo[0])
False
这就是为什么你得到一个空阵列的原因。列表理解替代方案[v for v in foo if v == foo[0]]
将导致[(5, 30)]