Я работаю над игрой памяти. Я хочу отображать изображения карт в два ряда. Все карты отображаются правильно, за исключением первого во втором ряду. запуск этого кода требует использования CodeSkulptor. Вся программа здесь: http://www.codeskulptor.org/#user41_a22429Vx58_2.pyПочему код работает для всех изображений, кроме первого?
def draw(canvas):
global deck, cards, WIDTH, HEIGHT
num_start = 10
w = 67
h = 100
center_source = [w // 2, h // 2]
center_dest = [w // 2, h // 2]
for c in deck:
for card in cards:
if card == c:
if center_dest[0] <= WIDTH:
canvas.draw_image(cards[card], (center_source), (w , h), (center_dest), (w, h))
center_dest[0] += w + 2
elif center_dest[0] > WIDTH:
center_dest = [w // 2, h // 2 + h]
canvas.draw_image(cards[card], (center_source), (w , h), (center_dest), (w, h *2))
center_dest[0] += w + 2
ссылка не работает – njzk2
'if card == c:' почему? – njzk2
@ njzk2 потому что список ** колода ** перетасовывается. карты должны быть в разных положениях каждый раз, когда игрок начинает игру. карта - это ключ в словаре. – Ekaterina1234