viernes, 18 de octubre de 2013

Python



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:
TipoClaseNotasEjemplo
strCadenaInmutable'Cadena'
unicodeCadenaVersión Unicode de stru'Cadena'
listSecuenciaMutable, puede contener objetos de diversos tipos[4.0, 'Cadena', True]
tupleSecuenciaInmutable, puede contener objetos de diversos tipos(4.0, 'Cadena', True)
setConjuntoMutable, sin orden, no contiene duplicadosset([4.0, 'Cadena', True])
frozensetConjuntoInmutable, sin orden, no contiene duplicadosfrozenset([4.0, 'Cadena', True])
dictMappingGrupo de pares clave:valor{'key1': 1.0, 'key2': False}
intNúmero enteroPrecisión fija, convertido en long en caso de overflow.42
longNúmero enteroPrecisión arbitraria42L ó 456966786151987643L
floatNúmero decimalComa flotante de doble precisión3.1415927
complexNúmero complejoParte real y parte imaginaria j.(4.5 + 3j)
boolBooleanoValor booleano verdadero o falsoTrue 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