Volver al índiceIDLE, el entorno de desarrollo de Python


Python e IDLE

Python es el nombre del lenguaje de programación.

IDLE (Integrated DeveLopment Environment for Python) es el entorno de desarrollo que permite editar y ejecutar los programas. Se pueden crear y ejecutar programas en Python sin utilizar IDLE, pero IDLE hace mucho más fáciles esas tareas (de hecho, IDLE en inglés significa holgazán).

Al abrir IDLE con el acceso directo Inicio > Programas > Python 2.7 > IDLE (Python GUI), se abrirá la ventana principal de IDLE, como muestra la imagen siguiente.

IDLE: Ventana principal

Esta ventana indica la versión de Python instalada.

Nota: La ventana de la imagen tiene un tamaño de 95x21 caracteres en vez del tamaño predeterminado de 80x40 caracteres


En la ventana de IDLE se pueden escribir órdenes de Python después del símbolo de petición >>> (en inglés, prompt). Al pulsar Intro, IDLE ejecutará la orden inmediatamente. Si la orden produce algún resultado, éste se mostrará en color azul y sin el símbolo de petición. Por ejemplo, se puede comprobar que Python sabe sumar dos más dos:

>>> 2 + 2

4

>>>

Al terminar de ejecutar la orden, IDLE vuelve a mostrar el símbolo de petición, en espera de una nueva orden.


Se pueden recuperar órdenes anteriores mediante los atajos de teclado:

Volver al principio de la página


Colores en los programas

Al escribir órdenes en IDLE, algunas palabras cambian de color. Los colores ayudan a identificar los distintos tipos de elementos y a localizar errores:

Por ejemplo:

>>> print 'hola'
hola
>>> print "hola"
hola
>>> print hola

Traceback (most recent call last):
  File "<pyshell#3>", line 1, in ?
    print hola
NameError: name 'hola' is not defined
>>>

Este ejemplo muestra cómo las cadenas de texto deben rodearse con comillas (dobles " o simples '). En la tercera orden del ejemplo anterior, Python escribe un mensaje de error en inglés que indica dónde se ha producido el error y por qué. En este caso, el error se debe a que hola no está entre comillas y Python cree que quieres saber el valor de una variable que se llama hola; al no estar definida previamente ninguna variable que se llame así, se produce un error.

Volver al principio de la página


Conservar los programas en archivos

El inconveniente de la ventana principal de IDLE es que para repetir una orden hay que volver a escribirla. Si simplemente queremos practicar órdenes sencillas la ventana principal de IDLE es suficiente, pero si se trata de un programa más complejo es conveniente guardar el programa en un archivo para poderlo recuperar posteriormente. Como además normalmente los programas no salen bien a la primera, eso permite corregir los errores sin tener que volver a escribir todo.

Todo esto se puede hacer con IDLE, abriendo una nueva ventana mediante el menú File > New Window. Al elegir esta opción se abrirá una nueva ventana como la de la imagen.

IDLE. Ventana principal y ventana secundaria

En esta ventana ya no aparece el simbolo de petición porque es simplemente un editor de texto (que también colorea las palabras, si el archivo se ha guardado con la extensión .py). Escriba por ejemplo el siguiente programa:

print "Hola, mundo"

print "Adios, mundo"

Habrá observado que en esta ventana, cuando se pulsa Intro, no se ejecuta la orden, sino que simplemente se pasa a la línea siguiente. Para poder ejecutar el programa, primero es necesario guardar el programa en el disco duro del ordenador. Elija la opción del menú File > Save para guardar el archivo (también puede utilizar la combinación de teclas Ctrl+S). La primera vez que guarde un programa se abrirá la ventana de diálogo estándar de Windows. Una vez elegida la carpeta y el nombre del archivo, no olvide escribir también la extensión .py. Si no escribe la extensión, IDLE no colorea las palabras. Una vez guardado el programa, el nombre del archivo aparece en la barra de título de la ventana.

Una vez haya guardado el programa, puede ejecutarlo mediante la opción del menú Run > Run module (también puede utilizar la tecla F5). La salida del programa se mostrará en la ventana principal de IDLE.

IDLE. Ejecución de un programa


El procedimiento de trabajo es siempre el mismo: escriba o modifique el programa en la ventana secundaria, guárdelo, ejecútelo y, en su caso, la salida del programa se mostrará en la ventana principal. Si quiere, puede tener varias ventanas secundarias abiertas simultáneamente.


Al escribir un programa tenga cuidado en no escribir espacios en blanco innecesarios al principio de una línea, porque Python mostrará un mensaje de error. Más adelante, en la lección de if.. elif... else.., aprenderá cuándo se deben poner espacios en blanco y qué significan en Python, pero en las lecciones de variables y de entrada y salida no debe poner espacios en blanco al principio de la línea.

Volver al principio de la página


Ejecutar programas en ventana de MS-DOS

Se puede ejecutar un programa abriendo una ventana de MS-DOS (Inicio > Ejecutar > cmd), cambiando a la carpeta donde esté el programa y escribiendo su nombre (con la extensión).

Por otro lado, como el instalador de Python registra la extensión .py, se puede ejecutar un programa de Python en Windows haciendo doble clic sobre él en el explorador de WIndows. El problema es que los programas se ejecutan en una ventana de MS-DOS que se abre al iniciarse el programa y que se cierra cuando el programa termina. Para evitar que los programas terminen, se puede añadir una última línea con la función raw_input() que, como se explica en la lección sobre entrada y salida, se queda esperando a que pulsemos la tecla Intro. Al pulsar Intro, la ventana se cerrará.

El inconveniente de esta solución es que cuando se ejecuta el programa en IDLE, el programa también se queda esperando que pulsemos Intro y es fácil olvidar hacerlo. Si no pulsamos Intro, al ejecutar un segundo programa, IDLE sigue esperando que pulsemos Intro para el primer programa y da la impresión de no funcionar correctamente. En general, antes de ejecutar un programa, hay que comprobar que en la ventana principal de IDLE el cursor esté visible junto al prompt >>>.

Volver al principio de la página


Problemas de IDLE con los caracteres no ASCII (acentos, etc)

Si en el código de un programa escribe una cadena que contenga caracteres no ASCII (acentos, ñ, ç, ¿, ¡, etc) , al guardar el archivo por primera vez, IDLE muestra el siguiente mensaje de aviso:

IDLE - Aviso sobre juego de caracteres

Al pulsar el botón "Edit my file" se insertará la línea siguiente al principio del programa:

# -*- coding: cp1252 -*-

Esta línea indica el juego de caracteres utilizado en el archivo. El juego de caracteres cp1252 es el juego de caracteres de Windows para Europa occidental y es similar a iso-8859-1. Una vez añadida la línea, el archivo se guardará sin problemas y al ejecutarlo en IDLE, se podrán ver correctamente todos los caracteres:

# -*- coding: cp1252 -*-

print "¡Hola, Ramón!"

¡Hola, Ramón!

Pero si ese mismo programa se ejecuta en una ventana de MS-DOS, los caracteres no se verán correctamente:

# -*- coding: cp1252 -*-

print "¡Hola, Ramón!"

raw_input()

íHola, Ram¾n!

Utilizando el juego de caracteres cp437 se obtiene el resultado contrario. Los caracteres se verán correctamente en una ventana de MS-DOS:

# -*- coding: cp437 -*-

print "¡Hola, Ramón!"

raw_input()

¡Hola, Ramón!

... pero se verán incorrectamente al ejecutarlo en IDLE:

# -*- coding: cp437 -*-

print "¡Hola, Ramón!"

­Hola, Ram¢n!

Para que los caracteres no ASCII se vean tanto en IDLE como en una ventana de MS-DOS, se puede utilizar el prefijo "u" en las cadenas, que hace que Python las convierta a cadenas Unicode. Esto funciona con cualquier codificación.

# -*- coding: cp1252 -*-

print u"¡Hola, Ramón!"

¡Hola, Ramón!

# -*- coding: cp1252 -*-

print u"¡Hola, Ramón!"

raw_input()

¡Hola, Ramón!

Volver al principio de la página

Esta página forma parte del curso "Introducción a la programación con Python" disponible en http://www.mclibre.org
Autor: Bartolomé Sintes Marco
Última modificación de esta página: 2 de mayo de 2012

Creative Commons License
Esta obra está bajo una licencia de Creative Commons.