Vote on PEP 308: Ternary Operator

Clark C. Evans cce at clarkevans.com
Tue Mar 4 22:06:10 EST 2003


Q accept switch-case
Q accept multi-line if/else
Z reject all single-line cases
Clark Evans

switch-case:

     data = select hasattr(s,'open')
              case true: s.readlines()
              else: s.split()

     z = 1.0 + select abs(z)
                case < .0001: 0
                else: z

     t = v[index] = select t
                      case <= 0:  t - 1.0
                      else: -sigma / (t + 1.0)

     return select len(s)
              case < 10: linsort(s)
             else: qsort(s)


multi-line if/else:

     data = (if hasattr(s,'open'): s.readlines()
             else: s.split())

     z = 1.0 + (if abs(z) < .0001: 0
                else: z)

     t = v[index] = (if t <= 0: t - 1.0
                     else: -sigma / (t + 1.0))

     return (if len(s) < 10: linsort(s)
             else: qsort(s))





More information about the Python-list mailing list