assignment expression peeve
Paul Rubin
http
Wed Oct 15 18:47:57 EDT 2003
Carl Banks <imbosol at aerojockey.invalid> writes:
> >> The real reason is that assignment expressions lead to all kinds of
> >> ugly and unreadable code. This is because there is no linguistic
> >> analogue for assignment as an expression.
> >
> > Swell, tell me the linguistic analog for metaclasses. Or should those
> > be removed too?
>
> Paragraph that defines some of its own words?
>
> Seriously, you're comparing apples to oranges here. I'm comparing
> syntax here, and there's nothing syntactical about metaclasses. If
> you want to compare a class statement to natural language, that works.
Actually, assignment expressions happen in natural language too.
In English you could say "A guy named Bob walks into a bar".
In Python with assignment expressions, you'd write
bar.enter(bob := Guy())
Without assignment expressions you'd have to say something like
bob = Guy()
bar.enter(bob)
which in English would be two sentences:
"There's a guy named Bob. Bob walks into a bar."
As I see it, the one-sentence, assignment-expression version is
perfectly natural and less stilted-sounding in normal conversation.
More information about the Python-list
mailing list