본문 바로가기
@연습용 재밌는 예제

[파이썬 재밌는 예제] 트럼프 카트 만들고 랜덤하게 뽑기

by 만다린망고 2023. 5. 4.
반응형

문제)

트럼프카드는 무늬(suit)와 순위의 조합으로 만들어진 카드입니다. 무늬는 스페이드, 다이아몬드, 하트, 클로버의 네가지가 있습니다. 순위는 Ace,2,3,4,5,6,7,8,9,10,J,Q,K 입니다. 4개의 무늬와 13개 순위의 조합이므로 총 52개의 카드가 만들어집니다. 

아래와 같이 무늬튜플과 순위튜플이 주어져 있습니다. 

SUIT = ('Spades', 'Hearts', 'Clubs', 'Diamonds')
RANK = ('Ace', '2', '3', '4', '5', '6', '7', '8', '9','10', 'Jack', 'Queen', 'King')


이 튜플을 이용하여 트럼프 카드를 만들어보세요. 결과는 아래와 같이 딕셔너리를 원소로 갖는 리스트 형태여야 합니다.

[{'rank': 'Ace', 'suit': 'Spades', 'value': 1}, {'rank': '2', 'suit': 'Spades', 'value': 2}]


value 는 rank 를 값으로 환산한 것입니다. Ace가 1, Jack, Queen, King 이 11,12,13 입니다. 

 

답)

CardDeck=[]
value=1

for suit in SUIT : 
    for rank in RANK :
        dict={'suit':suit,'rank':rank,'value':value}
        CardDeck.append(dict)
        value=value+1
    value=1


enumerate 함수를 이용하면 더 간단하게 코드를 구성할 수 있습니다. 

for suit in SUIT:
    for value, rank in enumerate(RANK):
        dict = {'rank':rank, 'suit':suit,'value':value + 1}
        CardDeck.append(dict)

 

반응형

댓글