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

75 comentarios en «Mi primer programa en Python»

  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 😀

  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 😛

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

  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 🙂

  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.

  5. 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 !

  6. 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.

  7. 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

  8. 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.

  9. 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.

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

  11. 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

  12. 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.

  13. 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…

      1. A mi también me sucede eso, y me molesta porque ni siquiera con la función input() se queda abierto el programa, no los abre, se cierran al instante. Son archivos .py. Necesito ayuda con esto, la agradecería muscho.

  14. 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.

  15. 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 🙂

  16. hola si entiendo todo pero una dudilla.. dices que para que el programa no se cierre de inmediato se debe poner lo que es raw_input(»), ya lo hice y se cierra en seguida aun asi..a que se debe? 😛

  17. Comenzando hoy con Python… para una clase de la Universidad Autonoma de San Luis potosi… que mas da a ver que sale… tenemos una semana para conocer a Python a ver como se comporta

  18. Hola!!
    Primero k nada kiero felicitarte, la explicacion es muy buena…
    jeje
    es mi primer dia entendiendo Python y me lateria seguirle..
    oye solo tube un problemilla ojala me pudieras ayudar
    al darle el nombre de archivo me dice
    File «», line 1
    igual me pasa cuando pongo .\hola.py
    no se si me pudieras decir xk pasa esto jeje
    sino, ps igual mil thanks me sirvio muxo

  19. Pingback: Hacer más portables los scripts llamando el interprete con env « Travesuras

  20. Olle y en Python no se usan clases? o bueno por ejemplo en java que es el que se usar 2 2, se usa el metodo principal para hacer cualquier cosa, hasta para imprimir hola mundo se crea el main, aqui no???

    1. en python tambien se utiliza clases para un mejor orden de codigo… yo principalmente lo utilizo para codigos grandes como hacer juegos en 2d con python y pygame 🙂

  21. Muy Interesante Articulo… Excelente… Felicitaciones.. Pero tengo una consulta, como podria ejecutar directamente un archivo de python, en linux haciendo doble clic en el, sin que me muestre la ventana en donde me indica que debo hacer (ejecutar en terminal y cia..)Desde ya, muchas gracias por el articulo y espero cualquier colaboracion, opinion…

    Un Saludo

  22. Mi hermano me esta eneñando a manejar python ya hice una calculadora un juego de apuestas un chequeo de paridad y un insutador de nombres.Sigo python porque quiero aprender a programar juegos ahora estoy aprendiendo a usar gasp.tus tutoriales me ayudan un monton

    1. para hacer juegos con python utiliza pygame pero es dependiendo de la version de python q estas utilizando… sigue asi python es chvre

  23. Como hago para hacer mi pequeño programa hecho en python quede como un ejecutable para widows, es decir que lo pueda correr con un simple doble click en cualquier equipo sin que tengan el compilador de python.
    Ahi les muestro mi codigo 😀

    sBruto = float(raw_input(«Introducir sueldo bruto: «))

    #Saca el valor del sueldo neto
    sNeto = sBruto * 0.83

    #Saca el valor de las horas (normal, al 50% y al 100%)
    vHoraNormal = sBruto / 200
    vHora100 = vHoraNormal * 2
    vHora50 = vHoraNormal * 1.5

    #Muestra por pantalla los resultados
    print «tu sueldo Neto es: «, sNeto
    print «tu hora normal vale: «, vHoraNormal
    print «tu hora al 50% vale: «, vHora50
    print «tu hora al 100% vale: «, vHora100

    raw_input(«Pulsa Para salir: «)

  24. Pingback: Python Gmail script (smtp) « Desarrollo de ideas y proyectos para mejorar la calidad de vida en Chile y el Mundo.

    1. esto es una agenda recontra simple aunq falta mas detalles que dar ahi como editar cuando te equivocas de nombre o eliminar algun dato

      lista=[]
      def menu():
      print «bienvenidos a la agenda virtual»
      print «1.nombre»
      print «2.apellidos»
      print «3.direccion»
      print «4.telefono»
      print «5.ver datos»
      print «6.salir»
      def nombre():
      a=raw_input(‘ingrese su nombre:’)
      lista.append(a)
      ‘nombre:’.join(a)
      def apellido():
      b=raw_input(‘ingrese su apellido:’)
      lista.append(b)
      ‘nombre:’.join(b)
      def direccion():
      c=raw_input(‘ingrese su direccion:’)
      lista.append(c)
      ‘nombre:’.join(c)
      def telefono():
      c=raw_input(‘ingrese su telefono:’)
      lista.append(c)
      ‘nombre:’.join(c)
      def ver_datos():
      print lista
      def agenda():
      while 1:
      menu()
      op=input(‘ingrese opcion:’)
      if op==1:
      nombre()
      if op==2:
      apellido()
      if op==3:
      direccion()
      if op==4:
      telefono()
      if op==5:
      ver_datos()
      agenda()

      1. como se ejcuta este programa osea yo lo ejecuto …bueno bien hasta ahi pero despues no se que hacer yo se que el esta bueno pero despues de ejecutado no se que hacer

  25. Hola a todos, soy nuevo en python y me gustaria saber como correo un archivo .py desde la consola de windows y poder ver mi archivo en el navegador, esto fue lo k hice

    python ‘abrir la consola de python
    print «hola mundo» ‘hasta ahi funciona

    pero para abrirlo en web como le hago ya teniedo un archivo extension .py en C:\proyecto\hola.py

    gracias

    Pabinho

  26. Me gusta la manera en que trabaja Python a pesar de que estoy en mis primeros paso, lo que no entiendo aun como funciona aplicado a web’s. Gracias por la info! Saludos

  27. Hola:

    Soy novatisimo en Linux, y soy un ignorante total de Python, traté de hacer esa simple tarea en el PYTHON SHELL pero me marca errores de sintaxis, la verdad estoy muy confundido, algunos hablan de el interprete de python, pero bueno la verdad es que nada mas no le hallo ni pies ni cabeza a python, me podrías hechar una mano porfavor? mi mail es gamasakuraverde@hotmail.com

  28. Hola tambien estoy empezando en python y quisiera saber si se pueden hacer ventanas como en visual basic….alguien podria orientarme? uno de los programas que quisiera hacer con python es como un programa para una tienda de abarrotes o videoclub…alguien sabra? gracias de antemano. 🙂

  29. wiii, mi primera ejecucion de python *w*, por el momento vamos bien, ya entendi como crearlo, editarlo y ejecutarlo, aprender el codigo, al parecer va a ser mas sencillo ya ke tengo bases de C y java *w*, gracias, encerio mill gracias

  30. Hola muy buenos tus consejos yo estoy estudiando y en mi carrera hay una materia que se llama Programacion y me sirven todos esos datitos que estas dando mil gracias.

  31. Tengo una duda. Soy nuevo en esto. Empecé a interezarme por la programación recien esta semana. Ya escribi un codigo para un programa sencillo en python, pero no se como ejecutarlo. Que hace falta, digamos para poder «usarlo». Muchas gracias.

    1. SOY NUEVO EN PHYTON Y ESTOY UTILIZANDO UN IDE LLAMADO APTANA STUDIO PARA CORRER MIS LINEAS DE CODIGO..SI ALGUIEN QUIERE COMPARTIR LINEAS DE CODIGOS PROBADAS PARA VERLAS Y ANALIZARLAS TAL VEZ DE ESTA MANERA PUEDA APRENDER ALGUNOS TRUCOS

Responder a pablo Cancelar respuesta

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.