Ben
On 4/13/05, [EMAIL PROTECTED] <[EMAIL PROTECTED]
> wrote:
Quoting Joseph Quigley <[EMAIL PROTECTED] >:
> prefixes = 'JKLMNOPQ'
> suffix = 'ack'
>
> for letter in prefixes:
> if letter == ('O') or ('Q'):
> print letter + 'u' + suffix
> else:
> print letter + suffix
Hi Joseph,
This still won't work. The reason is that your if statement is interpreted like
this:
if letter == 'O':
print letter + 'u' + suffix
elif 'Q':
print letter + 'u' + suffic
else:
print letter + suffix
Do you see? The == "binds more tightly" than the or. And, in python, 'Q' is
considered True for the purposes of tests.
So this is what happens:
>>> prefixes = 'JKLMNOPQ'
>>> suffix = 'ack'
>>>
>>> for letter in prefixes:
... if letter == ('O') or ('Q'):
... print letter + 'u' + suffix
... else:
... print letter + suffix
...
Juack
Kuack
Luack
Muack
Nuack
Ouack
Puack
Quack
>>>
What you can do instead is this:
for letter in prefixes:
if letter in ['O', 'Q']:
print letter + 'u' + suffix
else:
print letter + suffix
HTH.
--
John.
_______________________________________________
Tutor maillist - Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor
_______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor