On 10/04/2020 21:44, Elliott Dehnbostel wrote:
Hello Everyone,

I've also posted this to the python-ideas mailing list, but I thought to
post here as well for a more general audience.

If I've done this incorrectly, please let me know so that I can
improve/revise. I'm new to the Python community and quite enjoy the more
functional features of Python 3, but have I have a peeve about it. I'd like
to propose and discuss the following enhancement to Python 3:

*Consider the following trivial for-loop:*

chars = "abcaaabkjzhbjacvb"
seek = {'a','b','c'}
count = 0for a in chars:
      if a in seek:
           count += 1

Gross. Twice nested for a simple count.

a) I don't personally think that's gross (apart from the missing newline, which is just an email artefact I assume).

b) If it's simple like this and you care enough, refactor it as a comprehension:

  count = sum(1 for a in chars if a in seek)

It it's not so simple, neither the comprehension nor your proposal are going to be as readable as the twice nesting.

--
Rhodri James *-* Kynesim Ltd
--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to