deck
- это список, а i
- это элемент списка. Нет необходимости оценивать, если это элемент списка, конечно, это так. Эта оценка является проблемой. Обратите внимание: если i
многократно в deck
(например, при индексах 0 и 2), то ifi == deck[2]:
никогда не оценивается, потому что ifi == deck[o]:
сначала оценивается True
.
В дальнейшем я предполагаю, что deck
и position
имеют одинаковое количество элементов.
Либо используйте enumerate
, чтобы пройти deck
иполучить кортеж, содержащий индекс элемента и самого элемента:
for i, d in enumerate(deck):
p = positions[i]
if d == a:
gamedisplay.blit(imagea, p)
elif d == b:
gamedisplay.blit(imageb, p)
Или использовать zip
для одновременного прохождения deck
и positions
:
for d, p in zip(deck, positions):
if d == a:
gamedisplay.blit(imagea, p)
elif d == b:
gamedisplay.blit(imageb, p)