[Python-ideas] why not "name = value if condition"?
George Sakkis
george.sakkis at gmail.com
Tue Apr 7 15:10:33 CEST 2009
On Tue, Apr 7, 2009 at 9:03 AM, spir <denis.spir at free.fr> wrote:
> Hello,
>
> What's the reason why
> name = value if condition
> is invalid? Meaning: there _must_ be an else clause.
>
> [I imagine this has been discussed and refused consciously, but I couldn't find it in PEP308, nore in archives.]
>
> It would be practicle in many situations, e.g. to give default values to parameters:
>
> def writeFile(text, title, format=STANDARD, fileName=None):
> fileName = title+".py" if fileName is None
> ...
>
> Denis
>
> PS:
> Sure, one can write
> if condition:
> name = value
> but the rationale in favour of, or against, a one-liner shortcut is the same as for the ternary case (with else).
You do realize that "if condition: name = value" is a valid one-liner, right ?
if/else on the other hand is a two-liner at least.
George
More information about the Python-ideas
mailing list