El origen del lenguaje Python se remonta a principios de los noventa. Por este tiempo, un investigador holandés llamado Guido van Rossum, que trabajaba en el centro de investigación CWI (Centrum Wiskunde & Informatica) de Ámsterdam, es asignado a un proyecto que consistía en el desarrollo de un sistema operativo distribuido llamado Amoeba. Por aquel tiempo, el CWI utilizaba un lenguaje de programación llamado ABC. En lugar de emplear este lenguaje para el proyecto Amoeba, Guido decide crear uno nuevo que pueda superar las limitaciones y problemas con los que se había encontrado al trabajar en otros proyectos con ABC. Así pues, es esta la principal motivación que dio lugar al nacimiento de Python.
Tipos de datos
Los tipos de datos se pueden resumir en esta tabla:
| Tipo | Clase | Notas | Ejemplo |
|---|---|---|---|
str | Cadena | Inmutable | 'Cadena' |
unicode | Cadena | Versión Unicode de str | u'Cadena' |
list | Secuencia | Mutable, puede contener objetos de diversos tipos | [4.0, 'Cadena', True] |
tuple | Secuencia | Inmutable, puede contener objetos de diversos tipos | (4.0, 'Cadena', True) |
set | Conjunto | Mutable, sin orden, no contiene duplicados | set([4.0, 'Cadena', True]) |
frozenset | Conjunto | Inmutable, sin orden, no contiene duplicados | frozenset([4.0, 'Cadena', True]) |
dict | Mapping | Grupo de pares clave:valor | {'key1': 1.0, 'key2': False} |
int | Número entero | Precisión fija, convertido en long en caso de overflow. | 42 |
long | Número entero | Precisión arbitraria | 42L ó 456966786151987643L |
float | Número decimal | Coma flotante de doble precisión | 3.1415927 |
complex | Número complejo | Parte real y parte imaginaria j. | (4.5 + 3j) |
bool | Booleano | Valor booleano verdadero o falso | True o False |
- Mutable: si su contenido (o dicho valor) puede cambiarse en tiempo de ejecución.
- Inmutable: si su contenido (o dicho valor) no puede cambiarse en tiempo de ejecución.
Filosofia:
Los usuarios de Python se refieren a menudo a la Filosofía Python que es bastante análoga a la filosofía de Unix. El código que sigue los principios de Python de legibilidad y transparencia se dice que es "pythonico". Contrariamente, el código opaco u ofuscado es bautizado como "no pythonico" ("unpythonic" en inglés). Estos principios fueron famosamente descritos por el desarrollador de Python Tim Peters en El Zen de Python.
- Bello es mejor que feo.
- Explícito es mejor que implícito.
- Simple es mejor que complejo.
- Complejo es mejor que complicado.
- Plano es mejor que anidado.
- Disperso es mejor que denso.
- La legibilidad cuenta.
- Los casos especiales no son tan especiales como para quebrantar las reglas.
- Aunque lo práctico gana a la pureza.
- Los errores nunca deberían dejarse pasar silenciosamente.
- A menos que hayan sido silenciados explícitamente.
- Frente a la ambigüedad, rechaza la tentación de adivinar.
- Debería haber una -y preferiblemente sólo una- manera obvia de hacerlo.
- Aunque esa manera puede no ser obvia al principio a menos que usted sea holandés.15
- Ahora es mejor que nunca.
- Aunque nunca es a menudo mejor que ya mismo.
- Si la implementación es difícil de explicar, es una mala idea.
- Si la implementación es fácil de explicar, puede que sea una buena idea.
- Los espacios de nombres (namespaces) son una gran idea ¡Hagamos más de esas cosas!
Desde la versión 2.1.2, Python incluye estos puntos (en su versión original en inglés) como un huevo de pascua que se muestra al ejecutar
import this.
No hay comentarios.:
Publicar un comentario