我在 Python 代码的两个不同位置引发异常:
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.
但是,第二个输出一些奇怪的集合和字符串混合:
ERROR: ('Kr', 'is not a known card.')
为什么“+”运算符在这两种情况下表现不同?
编辑:对 init 的调用如下所示:
card1 = PokerCard(cardsStr[0:2])
card2 = PokerCard(cardsStr[2:4])