Pythonコードの2つの異なる場所で例外を発生させています。
holeCards = input("Select a hand to play: ")
try:
if len(holeCards) != 4:
raise ValueError(holeCards + ' does not represent a valid hand.')
AND (レイズコードを修正するために編集)
def __init__(self, card):
[...]
if self.cardFace == -1 or self.cardSuit == -1:
raise ValueError(card, 'is not a known card.')
何らかの理由で、最初は私が期待したように連結された文字列を出力します。
ERROR: Amsterdam does not represent a valid hand.
しかし、2番目はセットと文字列の奇妙なハイブリッドを出力します:
ERROR: ('Kr', 'is not a known card.')
これらの2つのケースで、「+」演算子の動作が異なるのはなぜですか。
編集: initの呼び出しは次のようになります:
card1 = PokerCard(cardsStr[0:2])
card2 = PokerCard(cardsStr[2:4])