On Fri, Aug 12, 2011 at 6:57 PM, rantingrick <rantingr...@gmail.com> wrote: > I'm glad you brought this up! How about this instead: > > a = x + y * z > > ...where the calculation is NOT subject to operator precedence? I > always hated using parenthesis in mathematical calculations. All math > should resolve in a linear fashion. 3+3*2 should always be 12 and NOT > 9!
Why is left-to-right inherently more logical than multiplication-before-addition? Why is it more logical than right-to-left? And why is changing people's expectations more logical than fulfilling them? Python uses the + and - symbols to mean addition and subtraction for good reason. Let's not alienate the mathematical mind by violating this rule. It would be far safer to go the other way and demand parentheses on everything. Incidentally, in the original expression, it would be slightly more sane to write it as: a = x + y) * z borrowing from the musical concept that a repeat sign with no corresponding begin-repeat means to repeat from the beginning. But both of these violate XKCD 859. -- http://mail.python.org/mailman/listinfo/python-list