Nonsense: they are executed just as you ask, even though what you ask is
not what you meant.
On 8/2/2013 8:40 PM, kevin4f...@gmail.com wrote:
def player_0_hitman(hit):
for card in pHands[target_player]:
if target_card[0] == card[0]:
count = pHands[target_player].count(card)
pHands[0].append(card)
pHands[target_player].remove(card)
ShowMessage("HIT: " + str(count) + " card(s) transferred")
else:
else: # indent to match if
if target_card[0] != card[0]:
# delete this if line, see below.
top_card = GetTopCard(sDeck)
pHands[0].append(top_card)
if top_card[0] == target_card[0]:
ShowMessage("HIT: LUCKILY Player 0 has fished up a rank <" +
str(top_card[0]) + ">!!!")
else:
ShowMessage("MISS: You fished up the rank <" + str(top_card[0]) +
">")
hit = hit - 1
return hit
This executes the for loop multiple times and the the else: clause of
the *for* statement (see the ref manual). I believe you want the whole
else: clause indented so that it will be executed when the if condition
is false. If so, the second if is redundant and should just be removed.
--
Terry Jan Reedy
--
http://mail.python.org/mailman/listinfo/python-list