Assignment and comparison in one statement

George Sakkis george.sakkis at gmail.com
Fri May 23 21:00:33 EDT 2008


On May 23, 6:59 pm, Johannes Bauer <dfnsonfsdu... at gmx.de> wrote:
> Hello group,
>
> I'm just starting with Python and am extremely unexperienced with it so
> far. Having a strong C/C++ background, I wish to do something like
>
> if (q = getchar()) {
>         printf("%d\n", q);
>
> }
>
> or translated to Python:
>
> if (p = myfunction()):
>         print p
>
> However, this "assignment and comparison" is not working. What's the
> "Python way" of doing this kind of thing?

The most obvious and readable of course: use two statements, as one
should do regardless of the language, instead of resorting to error-
prone hacks.

George



More information about the Python-list mailing list