2010
03.03

Estas tres últimas semanas, por diversos motivos, han sido bastante estresantes para mí. A pesar de todo, siempre aprovecho algún hueco para hacer alguna cosa divertida, como la del script que se replica a si mismo, que publiqué en la entrada anterior.

A veces, cuando estamos resolviendo un problema, debemos anotar que una variable tiene un valor desconocido. Normalmente, en C y SQL se usa NULL, en Lisp se usa nil, y en Python None. Centrémonos en python: en ocasiones el valor None también tiene sentido en una variable; puede significar que la variable, efectivamente, no contiene ningún valor, pero hay otros significados, otra semántica, que nos podría interesar. Por ejemplo, a mí me gusta trabajar con el valor desconocido que es distinto del valor ninguno (None) que uso para otra cosa. Podemos hacer lo siguiente:

Esto funciona porque en python las clases son, a su vez, objetos. El operador is sólo devuelve True si la referencia apuntada por el primer objeto y el segundo son la misma, es decir, si son la misma instancia. Además, el operador is puede usarse en combinación con not, con la siguiente sintaxis:

Esto no sólo aumenta aún más la legibilidad del código (python ya es muy cercano al inglés en algunos casos), sino que realmente no es necesario comentar el código: el código es el comentario.

Otra aplicación que le veo a usar clases de python para aumentar la semántica de los valores, añadiendo cosas como Infinito:

Share