On Sun, Oct 16, 2016 at 02:34:58PM +0200, Sven R. Kunze wrote: > As this discussion won't come to an end, I decided to consult my girlfriend. [...] > >>> [(i,i,i) for i in range(4)] > [(0, 0, 0), (1, 1, 1), (2, 2, 2), (3, 3, 3)]
Did you remember to tell your girlfriend that a critical property of the "??? for i in range(4)" construct is that it generates one value per loop? It loops four times, so it generates exactly four values (in this case, each value is a bracketed term). > Let's remove these inner parentheses again. > > >>> [*(i,i,i) for i in range(4)] > File "<stdin>", line 1 > SyntaxError: iterable unpacking cannot be used in comprehension It loops four times, so it must generate four values. What's the star supposed to do? Turn four loops into twelve? -- Steve _______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/