Powiel możliwe:
why does python's list.append evaluate to false?Python - Dlaczego funkcja extend() i append() zwraca None (void)?
W mojej opinii, myślę list1.extend(list2)
i list1.append(num)
powinien zwrócić zmutowany listy zamiast None
(void). Jak również efekt uboczny destruktywnego mutowania oryginalnej listy.
ja osobiście uważam, że jest też źle zaprojektowane API, a mutacja oparte na API są złe. Jednak to pytanie nie jest odpowiednie dla StackOverflow, ponieważ nie jest to kwestia; jest to opinia, która prawdopodobnie tylko zabiega o debatę. O ile nie rozważymy tytułu "Dlaczego metody extend() i append() zwracają None (void)?" jako część pytania, w którym przypadku nie jest łatwo odpowiedzieć, chyba że sami prosi się o to, co dzieje się w ich umysłach. – ninjagecko
Również jeśli chcesz tego zachowania, możesz zrobić "yourList + [1]" lub "yourList + [1,2,3]". Niestety imperatywne style programowania (takie jak python) "normalnie" po prostu odrzucają wartości zwracane, jeśli zostały użyte na liniach samodzielnie. – ninjagecko
@ninjagecko - pytanie jest zadawane, pytanie to brzmi "Dlaczego funkcja extend() i append() zwraca None (void)?" Zobacz tę odpowiedź w szczególności: (http://stackoverflow.com/a/1682601/21945) – mhawke