Thanks for everybodys input. Am learning slowly but surely.

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

Reply via email to