Gustavo J. A. M. Carneiro wrote:
>   More realistic example:
> 
>     def greet(person=None):
>       print "Hello %s" % (if person is None: "World" else: person)
> 
>   Not as compact as C's ?:, but more readable and intuitive.  It's just
> like an if-else construct, but on a single line and () around to make it
> look like an expression instead of a statement.

It looks even more like an expression without any embedded colons ;)

   def greet(person=None):
       # Infix conditional
       print "Hello %s" % ("World" if person is None else person)

   def greet(person=None):
       # Negated infix conditional so that 'normal' value is first
       print "Hello %s" % (person if person is not None else "World")

   def greet(person=None):
       # Prefix conditional
       print "Hello %s" % (if person is None then "World" else person)

Anyway, Guido's already given some indication that the PEP 308 infix and 
prefix conditional operators without colons (above) are the main options he is 
considering choosing from.

Regards,
Nick.

-- 
Nick Coghlan   |   [EMAIL PROTECTED]   |   Brisbane, Australia
---------------------------------------------------------------
             http://boredomandlaziness.blogspot.com
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to