Eventuali duplicati:
why does python's list.append evaluate to false?Python - Perché extend() e append() restituiscono None (void)?
A mio parere, credo che list1.extend(list2)
e list1.append(num)
dovrebbe restituire l'elenco mutato piuttosto che None
(void). Oltre ad avere l'effetto collaterale di mutare distruttivamente la lista originale.
io personalmente penso che sia anche un'API mal progettato, e la mutazione API basate su API sono cattive. Tuttavia questa domanda non è appropriata per StackOverflow, dal momento che non è una domanda; è un'opinione che probabilmente solleciterà solo il dibattito. A meno che non consideriamo il titolo "Perché extend() e append() restituiscono None (void)?" come parte della domanda, qual è il caso in cui non è facilmente rispondibile a meno che non si chieda agli sviluppatori cosa stesse passando per la loro mente. – ninjagecko
Inoltre, se desideri questo comportamento, puoi fare "la tua lista + [1]" o "la tua lista + [1,2,3]'. Purtroppo, gli stili di programmazione imperativi (come python) "normalmente" cancellerebbero semplicemente i valori di ritorno se fossero usati da soli sulle linee. – ninjagecko
@ninjagecko: viene posta una domanda, la domanda è "Perché extend() e append() restituiscono None (void)?" Vedi questa risposta in particolare: (http://stackoverflow.com/a/1682601/21945) – mhawke