objecto nulo em Python?

Como é que me refiro ao objecto nulo em Python?

Solução

Em Python, o objeto 'nulo' é o singleton 'Ninguém'.

A melhor maneira de verificar as coisas para "Não Unicidade" é utilizar o operador de identidade, is:

if foo is None:
    ...
Comentários (10)

Não é chamado de nulo como em outras línguas, mas NENHUM'. Há sempre apenas uma instância deste objeto, então você pode verificar a equivalência com x é None (comparação de identidade) ao invés de x == None, se você quiser.

Comentários (1)

Em Python, para representar a ausência de um valor, você pode usar o valor None (types.NoneType.None) para objetos e "" (ou len() == 0) para strings. Portanto:

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

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

Em relação à diferença entre "==" e "is", testes para a identidade do objeto usando "==" devem ser suficientes. Entretanto, como a operação "is" é definida como a operação de identidade do objeto, provavelmente é mais correto usá-la, ao invés de "==". Não tenho a certeza se existe sequer uma diferença de velocidade.

Seja como for, podes dar uma vista de olhos:

Comentários (7)