[Tutor] New to programming question (Ben M.) (Joseph Q.)
Joseph Quigley
cpu.crazy at gmail.com
Thu Apr 14 16:46:13 CEST 2005
>>>>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
Oh, ok. Sorry, my bad :)
So there is a special use for ==. I must look into this.
Thanks,
Joe
More information about the Tutor
mailing list