Passing None
-list
Konstruktor Python ist ein TypeError
:In Python, warum ist Liste (None) ein Fehler, aber [None] ist nicht?
>>> l = list(None)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'NoneType' object is not iterable
Aber Klammern ein instanziiert list
ist in Ordnung; mit None
mit den integrierten Funktionen ist auch in Ordnung:
>>> l = [None]
>>> l.append(None)
>>> l
[None, None]
Mein Verständnis war, dass list()
und []
waren gleichwertige Möglichkeiten, eine neue list
zu schaffen. Was vermisse ich?
Nein, 'Liste()' und '[]' sind ** ** nicht gleichwertig. 'liste ([...])' und '[...]' wäre äquivalent. 'list ('a', 'b', 'c')' * funktioniert auch nicht *. –
@MartijnPieters Ich denke nicht, dass das genau ist. 'list ([...])' 'erstellt eine Kopie. – wim
@wim: Sicher, und die Liste, die Sie übergeben haben, wird wieder verworfen. Das Endergebnis ist das gleiche. Der Punkt ist mehr, dass "Liste (...)" hier nicht gleich ist. –