Mi primer programa en Python

Como comentábamos en Python: Herramientas básicas existen dos formas de ejecutar código Python, bien en una sesión interactiva (línea a línea) con el intérprete, o bien de la forma habitual, escribiendo el código en un archivo de código fuente y ejecutándolo.

Nuestro primer programa es el clásico Hola Mundo, y en Python es tan simple como:

print "Hola Mundo"

Vamos a probarlo primero en el intérprete. Ejecuta python o ipython según tus preferencias, escribe la línea anterior y pulsa Enter. El intérprete responderá imprimiendo el texto “Hola Mundo”.

Vamos ahora a crear un archivo de texto con el código anterior, de forma que pudiéramos distribuir nuestro pequeño gran programa entre nuestros amigos. Abre tu editor de texto preferido o bien el IDE que hayas elegido y copia la línea anterior. Guárdalo como hola.py, por ejemplo.

Ejecutar este programa es tan sencillo como indicarle el nombre del archivo al intérprete

python hola.py

pero vamos a ver cómo simplificarlo aún más.

Si utilizas Windows los archivos .py ya estarán asociados al intérprete de Python, por lo que basta hacer doble clic sobre el archivo para ejecutar el programa. Sin embargo como este programa no hace más que imprimir un texto en la consola, la ejecución es demasiado rápida para poder verlo si quiera. Para remediarlo vamos a añadir una nueva línea que espere la entrada de datos por parte del usuario.

print "Hola Mundo"
raw_input()

De esta forma el texto “Hola Mundo” se mostrará hasta que pulsemos Enter.

Si utilizas Linux (u otro Unix) para conseguir este comportamiento, es decir, para que el sistema operativo abra el archivo .py con el intérprete adecuado, es necesario añadir una nueva línea al principio del archivo:

#!/usr/bin/python
print "Hola Mundo"
raw_input()

A esta línea se le conoce en el mundo Unix como shebang, hashbang o sharpbang. El par de caracteres “#!” indica al sistema operativo que dicho script se debe ejecutar utilizando el intérprete especificado a continuación. De esto se desprende, evidentemente, que si esta no es la ruta en la que está instalado nuestro intérprete de Python, es necesario cambiarla.

Otra opción es utilizar el programa env (de environment, entorno) para preguntar por la ruta al intérprete de Python, de forma que nuestros usuarios no tengan ningún problema si se diera el caso de que el programa no estuviera instalado en dicha ruta:

#!/usr/bin/env python
print "Hola Mundo"
raw_input()

Por supuesto además del shebang, tendremos que dar permisos de ejecución al programa.

chmod +x hola.py

Y listo, si hacemos doble clic el programa se ejecutará, como en el caso de Windows (en Gnome seleccionaríamos Ejecutar en un Terminal), aunque podríamos ejecutarlo en consola como si fuera un ejecutable cualquiera:

./hola.py

Comentarios
  1. Si que te gusta Phyton no? xD yo estuve practicando un tiempo, pero me cansé. Podrias ir haciendo cada dia una entrada de como te va con Phyton. Y de paso aprendemos todos :-D

    Responder

  2. Ehhhhh… no es mi primer programa en Python, no es más que el título de la entrada. De hecho gromlist, weather wallpaper, mi script para descargar de megaupload como premium, mis scripts para nautilus, … están todos escritos en Python.

    Así que una serie de artículos sobre cómo me va con Python no tendría mucha utilidad, más que a personas que tengan cierta experiencia con el lenguaje :P

    Lo que estoy haciendo es un tutorial por artículos, del que esta entrada forma parte, como ya comenté en otros posts.

    Responder

  3. Saludos! , nada mas una preguntita….el programa env…sirve para todo tipo de interpretes? o solo para python? serviria con bash?

    Y por cierto sigues asi que esta interesante esta serie de posts, xq al menos yo ya voy anotando :)

    Responder

  4. Si marshal, sirve para cualquier programa. Lo único que hace es buscarlo en el PATH y ejecutarlo. No es más que un pequeño “truco” para que sean más portables.

    Por eso muchas veces la primera línea de un script bash es un env bash, la primera de un script perl un env perl, etc.

    Responder

  5. MiKeLEtE

    Como curiosidad, “hola mundo” en “todos” los lenguajes de programación:

    http://es.wikipedia.org/wiki/Hola_mundo

    Responder

  6. Como instalo python en Ubuntu 7.10

    Responder

  7. DiZo

    Muy interesantes estos últimos artículos que estás escribiendo sobre Python, la verdad que si vas a seguir así durante un tiempo puedo recomendar a una persona que lo visite, ya que está interesado en programar este lenguaje.

    Saludos !

    Responder

  8. Python está instalado por defecto en Ubuntu 7.10 Gallolinux, como en la mayor parte de las distros Linux (por no decir todas, porque alguna habrá que no)

    DiZo, si que seguiré durante un tiempo. En principio quiero seguir escribiéndolo hasta que quede un curso interesante, aunque no prometo nada, porque todo depende del interés que despierte en la gente, del trabajo que tenga y de otros factores.

    Responder

  9. Yo estoy empezando, y estoy emocionado!!
    Seguiré tus tutos, a ver si aprendo algo nuevo! :D
    KEep it up!

    Responder

  10. Yo digo como Gandhi, así que… a ver si salen unas clases majas y amenas, como nos tienes acostumbrados en los post. :P

    Responder

  11. Carloco

    Me parece genial que hagas estos mini-cursos, a me había despertado interés hace tiempo este lenguaje. Y ahora veo una oportunidad de aprender por lo menos lo básico.
    Sigue así porfa

    Saludos

    Responder

  12. Buenas

    Me parece genial que montes este curso. Con tus dos Post anteriores sobre Python me entro el gusanillo de aprender, y mira que bien, aquí podre.

    Responder

  13. sis

    Hola:
    yo también me apunto… hace tiempo que quiero aprender a programar o por lo menos entender algo de programación. Siempre me desanimo cuando se empieza con los conceptos de objetos y demás. Se me hace demasiado complejo y abstracto.
    A ver si esta vez me entero de algo.
    Gracias por adelantado.

    Responder

  14. En realidad la orientación a objetos no tiene ningún misterior sis.

    Espero explicarlo bien y que no sea necesario, pero si no entiendes algo siempre puedes preguntar cualquier duda que tengas.

    Responder

  15. jose

    gracias por compartir la informacion y los descubrimientos, para los que no sabemos y vamos iniciando.

    Responder

  16. guilli

    Hola quisiera saber rapidamente como correr un programita de python en windows apenas ayer empece y quiero correr el famoso Hola mundo

    Responder

  17. fernando

    Hola, pues yo tengo un problema con este programilla. escribo en un editor lo siguiente

    #!/usr/bin/env python
    print “Hola Mundo”
    raw_input()

    y le doy permisos, pero al ejecutarlo en un terminal la ventana aparece y desaparece. podriais ayudarme??muchas gracias

    Responder

  18. Rafa

    Hola yo estoy aprendiendo a programar en python pero me pero he hecho algunos programilas con graficos, hacer circulos figuras y demas, y me gustaria como puedo ejecutarlo sin necesidad del python, ya sabes como un ejecutable, vamos, compilarlo, agradecira mucho la ayuda.

    Responder

  19. Andrés

    Bueno el artículo! soy nuevo en Python y me pasa que a pesar de poner el famoso raw_input()y hacer mil cambios como por ejemplo pasar de la versión 3.1 a la 3.0 y ahora a la 2.6 igual se desaparecen mis programas en Win XP (De 10 solo uno o dos no desaparecen pero a éstos les hago un ligero cambio y ¡zas! desaparecen. Ya no sé que hacer. Ayuda por favooooooor…

    Responder

    • ¿Cómo que desaparecen los programas? ¿Los tienes guardados en archivos .py y los archivos desaparecen?

      Responder

  20. vanessa

    La verdad es que siento que se me hace muy dificil por que apenas estoy empezando, pero lo divertido de todo esto es intercambiar los valores de las variables asi sabras lo que hace cada funcion.
    Espero aprender mas sobre este programa.

    Responder

  21. Salvador Uciel

    Estuvo exelente esta ayuda me sirvio de mucho

    gracias

    Responder

  22. jeison

    me gusta python esta bueno felicito a la gente

    Responder

  23. Es muy interesante, pero tengo una duda con el comando de

    chmod +x hola.py

    Lo que hice fue poner en un txt:

    print “Hola Mundo”
    raw_input()

    Funcionó Correctamente y luego no entendi que funcion cumple lo demás

    Saludos :)

    Responder

  24. luis

    nesecisto un programa que me busque un numero mayor meno e intermedio de tres numeros

    Responder

  25. miguel

    me parece chido estoy empesando con python y me funcionaron las instrucciones gracias, me sirvio de mucho.

    Responder

Deja un comentario