Frecuentemente necesito verificar si una instancia de una clase tiene una propiedad y si esa propiedad existe, haga una comparación con su valor. ¿No hay forma de hacerlo además de lo siguiente?Comprobando la existencia y si existe, hay un cierto valor
if house.garage:
if house.garage == '3 car':
# do something with house.garage
Las personas no hacen la distinción entre "atributo no existe" y "atributo tiene un valor falsey", que es muy importante ya que las otras dos respuestas generarán excepciones si 'house.garage' no existe realmente como opuesto a simplemente ser Ninguno. – Jake
Esta es una buena respuesta, pero el otro caso es más común para mí. Normalmente estoy buscando claves foráneas en un modelo django. Por lo tanto, el atributo siempre existe (es dotable) pero a veces es Ninguno y generará un error si intento acceder a uno de los atributos de los modelos relacionados. – freb