나는 꽤 좋은 파이썬 책을 읽고 있으며, 일부 카드 게임에 대한 시뮬레이션을 만드는 법을 가르쳐줍니다. 아래에서 볼 수 있듯이 갑판에있는 모든 카드 조합을 색인화하기 위해 "카드"클래스를 만들었습니다. 그런 다음 "카드"의 카드 조합에서 갑판을 만드는 "갑판"클래스를 만들었습니다. 내 질문은, 내가 decl에서 카드를 복용하는 사람을 시뮬레이션하려고하지만, 마지막 클래스 함수 removeCard 작동하지 않을 수 있습니다, 그리고 나는 확실히 이유가 확실하지 않습니다. 누군가 내 문제를 어떻게 이해할 수 있도록 도와 줄 수 있습니까? 감사.카드 게임 시뮬레이션 list.remove
class Card:
def __init__(self, suit = 0, rank = 2):
Card.suit = suit
Card.rank = rank
#Two class attributes that are helpful in determining suit/rank
ranklist = ['narf', 'Ace', 'Two', 'Three', 'Four', 'Five', \
'Six', 'Seven', 'Eight', 'Nine', 'Ten', 'Jack', 'Queen', 'King']
suitlist = ['Clubs', 'Diamonds', 'Hearts', 'Spades']
def __repr__(self):
return (self.ranklist[self.rank] + " of " + self.suitlist[self.suit])
class Deck:
def __init__(self):
self.cards = []
for suit in range(4):
for rank in range(1,13):
x = Card()
x.rank = rank
x.suit = suit
self.cards.append(x)
def printDeck(self):
for card in self.cards:
print(card)
def removeCard(self, card):
if card in self.cards:
self.cards.remove(card)
return True
else:
return False
_ "하지만 마지막 클래스 기능 removeCard는 동작하지 않습니다."_ 당신은 갑판을 만드는 방법, 카드를 제거하고 결과를 보여 보여 완료, 실행 가능한 코드를 제공 할 수 있을까요? 또한 게시물에서 코드의 형식이 올바르게 지정되었는지 다시 확인할 수 있습니까? 나는 그것을 실행하려고 할 때'IndentationError'를 얻게됩니다. – Kevin
책의 이름은 무엇입니까? – Bazman