Я пытаюсь создать простую игру Pontoon (похожую на блэкджек), и я составил список карт в виде колоды.Моя текущая сборка игры работает, если я задаю ACE значение 1 или 14, но мне нужно, чтобы оно имело оба значения, поэтому, если рука превышает 21, ACE возвращается к 1.
deck = [ACE, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, ACE, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, ACE, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, ACE, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]
Так чтов основном сбор карт происходит следующим образом:
while True:
hand = []
hand.extend(random.sample(deck, 1))
print(hand)
while True:
hit = input("new card? (k/e)")
if hit == "k":
hand.extend(random.sample(deck, 1))
print("")
print("HAND:")
print(hand)
a = sum(hand)
print("")
print("SUM:")
print(a)
if a > 21:
print("")
print("OVER")
break
elif a == 21:
print("")
print("Pontoon")
break
else:
continue
Я пытался сделать ACE как функцию, но random.sample не работает с этим
def ACE():
if a > 21:
A = 1
else:
A = 14
return int(A)
Так как мнезаставить ACE работать как 1 и 14?