null objekt i Python?

Hvordan henviser jeg til null-objektet i Python?

Løsning

I Python er objektet 'null' singletonobjektet None.

Den bedste måde at kontrollere ting for "Noneess" er at bruge identitetsoperatoren is:

if foo is None:
    ...
Kommentarer (10)

Det hedder ikke null som i andre sprog, men None. Der er altid kun én instans af dette objekt, så du kan kontrollere ækvivalens med x is None (identitetssammenligning) i stedet for x == None, hvis du ønsker det.

Kommentarer (1)

I Python kan du bruge værdien None (types.NoneType.None) for objekter og "" (eller len() == 0) for strenge for at repræsentere fraværet af en værdi. Derfor:

if yourObject is None:  # if yourObject == None:
    ...

if yourString == "":  # if yourString.len() == 0:
    ...

Hvad angår forskellen mellem "==" og "is", bør det være tilstrækkeligt at teste for objektidentitet ved hjælp af "==". Da operationen "is" imidlertid er defineret som objektidentitetsoperationen, er det sandsynligvis mere korrekt at bruge den frem for "==". Jeg er ikke sikker på, om der overhovedet er en hastighedsforskel.

Anyway, du kan tage et kig på:

Kommentarer (7)