Warum gibt es in Python keine explizite Leerheitsprüfung (z. B. `ist leer`)?

The Zen of Python sagt "Explizit ist besser als implizit". Der "pythonische" Weg, die Leere zu überprüfen, ist die implizite Boolesche:

if not some_sequence:
    some_sequence.fill_sequence()

Dies wird wahr sein, wennsome_sequence ist eine leere Sequenz, aber auch wenn es @ iNone oder0.

Vergleichen Sie dies mit einer theoretischen expliziten Leerheitsprüfung:

if some_sequence is Empty:
    some_sequence.fill_sequence()

Mit einigen ungünstig gewählten Variablennamen wird die implizite Boolesche Eigenschaft, auf Leere zu prüfen, noch verwirrender:

if saved:
    mess_up()

Vergleichen mit

if saved is not Empty:
    mess_up()

Siehe auch: "Python: Wie überprüfe ich am besten, ob eine Liste leer ist? ". Ich finde es ironisch, dass die am häufigsten gewählte Antwort behauptet, dass implizit pythonisch ist.

So gibt es einen höheren Grund, warum es keine explizite Leerheitskontrolle gibt, wie zum Beispielis Empty in Python?

Antworten auf die Frage(10)

Ihre Antwort auf die Frage