Op 24-11-15 om 16:48 schreef Chris Angelico: > On Wed, Nov 25, 2015 at 2:46 AM, Antoon Pardon > <antoon.par...@rece.vub.ac.be> wrote: >> What is your point? I say that [] looks like a literal. Because it >> sure resembles () which is a literal. >> >> That [] in fact isn't a literal doesn't contradict it looks like >> one. >> >> That you can come up with more complicated list expressions that >> are more easily recognizable as not being literals is beside the >> point because we have generator expressions that look similar to >> those list comprehensions and those generator expressions don't >> contradict that () is a literal. > > () is not a literal either.
The byte code sure suggests it is. Take the following code: import dis def f(): i = 42 t = () l = [] dis.dis(f) That produces the following: 4 0 LOAD_CONST 1 (42) 3 STORE_FAST 0 (i) 5 6 LOAD_CONST 2 (()) 9 STORE_FAST 1 (t) 6 12 BUILD_LIST 0 15 STORE_FAST 2 (l) 18 LOAD_CONST 0 (None) 21 RETURN_VALUE So on what grounds would you argue that () is not a literal. -- Antoon. -- https://mail.python.org/mailman/listinfo/python-list