Guía de aprendizaje de Python

Python es un lenguaje de programación fácil de aprender y potente. Tiene eficaces estructuras de datos de alto nivel y una solución de programación orientada a objetos simple pero eficaz. La elegante sintaxis de Python, su gestión de tipos dinámica y su naturaleza interpretada hacen de él el lenguaje ideal para guiones (scripts) y desarrollo rápido de aplicaciones, en muchas áreas y en la mayoría de las plataformas.

El intérprete de Python y la extensa biblioteca estándar están disponible libremente, en forma de fuentes o ejecutables, para las plataformas más importantes en la sede web de Python, http://www.python.org, y se pueden distribuir libremente.

La misma sede contiene también distribuciones y direcciones de muchos módulos, programas y herramientas Python de terceras partes, además de documentación adicional.

Es fácil ampliar el intérprete Python con nuevas funciones y tipos de datos implementados en C y C++ (u otros lenguajes a los que se pueda acceder desde C). Python es también adecuado como lenguaje de extensión para aplicaciones adaptables al usuario. Esta guía presenta informalmente al lector los conceptos y características básicos del lenguaje y sistema Python. Es conveniente tener a mano un intérprete para hacer experimentos, pero todos los ejemplos son autosuficientes, así que la guía se puede leer sin estar conectado.

Para obtener descripciones de módulos y objetos estándar, consulta el documento Referencia de las bibliotecas. El Manual de Referencia de Python ofrece una definición más formal del lenguaje. Para escribir extensiones en C o C++, lee los manuales de Extensión e incrustación y Referencia de la API Python/C. Existen también diversos libros que tratan Python con detalle. Esta guía no intenta ser exhaustiva ni agotar cada capacidad de Python, ni siquiera las más comúnmente utilizadas. En lugar de esto, introduce muchas de las capacidades que caracterizan Python y proporciona una idea clara del estilo y sabor del lenguaje. Tras su lectura, el lector será capaz de leer y escribir módulos y programas en Python y estará preparado para aprender más sobre los diversos módulos de biblioteca Python descritos en la Referencia de las bibliotecas.

. Introducción

Si en alguna ocasión has escrito un guion para intérprete de órdenes (o shell script) de UNIX largo, puede que conozcas esta sensación: Te encantaría añadir una característica más, pero ya es tan lento, tan grande, tan complicado. . . O la característica involucra una llamada al sistema u otra función accesible sólo desde C. El problema en sí no suele ser tan complejo como para transformar el guion en un programa en C. Igual el programa requiere cadenas de longitud variable u otros tipos de datos (como listas ordenadas de nombres de fichero) fáciles en sh, pero tediosas en C. O quizá no tiene tanta soltura con C.

Otra situación: Quizá tengas que trabajar con bibliotecas C diversas y el ciclo normal C escribir-compilar-probar-recompilar es demasiado lento. Necesitas desarrollar software con más velocidad. Posiblemente has escrito un programa al que vendría bien un lenguaje de extensión y no quieres diseñar un lenguaje, escribir y depurar el intérprete y adosarlo a la aplicación.

En tales casos, Python puede ser el lenguaje que necesitas. Python es simple, pero es un lenguaje de programación real. Ofrece más apoyo e infraestructura para programas grandes que el intérprete de órdenes. Por otra parte, también ofrece mucha más comprobación de errores que C y, al ser un lenguaje de muy alto nivel, tiene incluidos tipos de datos de alto nivel, como matrices flexibles y diccionarios, que llevarían días de programación en C. Dados sus tipos de datos más generales, se puede aplicar a un rango de problemas más amplio que Awk o incluso Perl, pero muchas cosas son, al menos, igual de fáciles en Python que en esos lenguajes.

Python te permite dividir su programa en módulos reutilizables desde otros programas Python. Viene con una gran colección de módulos estándar que puedes utilizar como base de tus programas (o como ejemplos para empezar a aprender Python). También hay módulos incluidos que proporcionan E/S de ficheros, llamadas al sistema, sockets y hasta interfaces a IGU (interfaz gráfica con el usuario) como Tk.

Python es un lenguaje interpretado, lo que ahorra un tiempo considerable en el desarrollo del programa, pues no es necesario compilar ni enlazar. El intérprete se puede utilizar de modo interactivo, lo que facilita experimentar con características del lenguaje, escribir programas desechables o probar funciones durante el desarrollo del programa de la base hacia arriba. También es una calculadora muy útil.

Python permite escribir programas muy compactos y legibles. Los programas escritos en Python son típicamente mucho más cortos que sus equivalentes en C o C++, por varios motivos:

  • Los tipos de datos de alto nivel permiten expresar operaciones complejas en una sola sentencia.
  • El agrupamiento de sentencias se realiza mediante sangrado (indentación) en lugar de begin/end o llaves.
  • No es necesario declarar los argumentos ni las variables.

Python es ampliable: si ya sabes programar en C, es fácil añadir una nueva función o módulo al intérprete, para realizar operaciones críticas a la máxima velocidad o para enlazar programas en Python con bibliotecas que sólo están disponibles en forma binaria (como bibliotecas de gráficos específicas del fabricante). Una vez enganchado, puedes enlazar el intérprete Python a una aplicación escrita en C y utilizarlo como lenguaje de macros para dicha aplicación.

A propósito, el nombre del lenguaje viene del espectáculo de la BBC “Monty Python’s Flying Circus” (el circo ambulante de Monty Python) y no tiene nada que ver con desagradables reptiles. Hacer referencias a sketches de Monty Python no sólo se permite: ¡es recomendable!

. Por dónde seguir

Ahora que estás emocionado con el Python, querrás examinarlo con más detalle. Como la mejor manera de aprender un lenguaje es utilizarlo, desde aquí te invitamos a hacerlo.

En el siguiente capítulo se explica la mecánica de uso del intérprete. Es información un tanto aburrida, pero esencial para probar los ejemplos posteriores.

El resto de la guía presenta varias características del sistema y del lenguaje Python mediante ejemplos, empezando por las expresiones, sentencias y tipos de datos sencillos, pasando por las funciones y los módulos, para finalizar con una primera visión de conceptos avanzados, como excepciones y clases definidas por el usuario.

COMPARTE ESTE ARTÍCULO

ENVIAR A UN AMIGO
COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN GOOGLE +
¡SÉ EL PRIMERO EN COMENTAR!
Conéctate o Regístrate para dejar tu comentario.