Earlier quoted context omitted.
persons = [person for person in (Person(name) for name in names) if person.isValid()] This is Python.
i've been struggling with python in comprehensions since time immemorial. map/filter are a breeze.
[person
tells you that you're getting a list of persons. That's the most important part. The rest is telling you how they're getting in that list.It's almost like a select query in (pseudo) SQL.
select person from people where person.isvalid = true
vs [person for person in people if person.isvalid]