On Fri, Feb 21, 2014 at 8:52 AM, Antoine Pitrou <solip...@pitrou.net> wrote:
> On Fri, 21 Feb 2014 14:15:59 +1100 > Chris Angelico <ros...@gmail.com> wrote: > > > > A number of functions and methods have parameters which will cause > > them to return a specified value instead of raising an exception. The > > current system is ad-hoc and inconsistent, and requires that each > > function be individually written to have this functionality; not all > > support this. > > While I sympathize with the motivation, I really don't like the end > result: > > > lst = [1, 2] > > value = lst[2] except IndexError: "No value" > > is too much of a break from the usual stylistic conventions, and looks > like several statements were stuffed on a single line. > > In other words, the gain in concision is counterbalanced by a loss in > readability, a compromise which doesn't fit in Python's overall design > principles. > > (compare with "with", which solves actual readability issues due to the > distance between the "try" and the "finally" clause, and also promotes > better resource management) > While I like the general concept, I agree that it looks too much like a crunched statement; the use of the colon is a non-starter for me. I'm sure I'm not the only one whose brain has been trained to view a colon in Python to mean "statement", period. This goes against that syntactic practice and just doesn't work for me. I'm -1 with the current syntax, but it can go into the + range if a better syntax can be chosen.
_______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com