Я пытаюсь написать функции python, которые принимают в списке или массиве. если любые два числа в списке или массиве равны нулю, я хочу вернуть позиции этих двух чисел.Список Python: если пара чисел равна 0 возвращает позиции элементов
Вот что у меня есть. Я прохожу через список и имею вложенный цикл из того же списка, чтобы проверить, есть ли внешний итератор плюс вложенный итератор == 0: если да, то я пытаюсь вернуть позиции двух чисел, которые == 0. но это просто вместо этого дает мне фактические два числа. Странно, что результат ниже (хотя это не то, что я хочу) должен быть (3, -3). Любой вклад будет высоко оценен
def twosum(nums):
for x in nums:
for y in nums:
if x + y == 0:
return nums[x],nums[y]
print twosum([1, 3, 5, -3])
output = (-3, 3)
Если 'x' является элементом' nums', что такое 'nums [x]'? Вернитесь в свой материал курса и проверьте, что делают скобки, если вы не помните. – user2357112
@ user2357112 Я знаю, что это индекс, но я думаю, что первое число должно быть 3 не -3. – ziggy
@ziggy: Если 'x' равно 3, что такое' nums [x] '? Это не 3. – user2357112