[Python-Dev] Tricky way of of creating a generator via a comprehension expression (original) (raw)

Ivan Levkivskyi levkivskyi at gmail.com
Wed Nov 22 16:40:20 EST 2017


22 Лис 2017 22:33 "Ethan Furman" <ethan at stoneleaf.us> пише:

On 11/22/2017 01:25 PM, Ivan Levkivskyi wrote:

22 Лис 2017 22:19 "Ethan Furman" пише:

Whether it's inside or outside a function should be irrelevant -- a

comprehension / generator expression should have no influence on the type of the resulting function (and at least synchronous comprehensions / generator expressions should be able to live outside of a function).

def fungen(): return list((yield i) for i in range(3)) The return says it's returning a list, so that's what it should be returning def f(): yield 1 return list() Here return also says it should return a list, so this is not an argument.

Right, the argument is that calling the list constructor should return a list -- not a database proxy, not a web page, and not a generator.

Then you didn't read my example carefully, since the whole point is that the list constructor there returns a list. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.python.org/pipermail/python-dev/attachments/20171122/b8ea067f/attachment-0001.html>



More information about the Python-Dev mailing list