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

    • alvaro

      ps escribe
      sudo easy_install python
      y listo

      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

      • herny

        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.

        Responder

        • kart35

          la nueva version necesita parentesis para el print:
          print (‘hola mundo’)
          o
          print (“hola mundo”)

          intenta esto:
          while (1):
          print (“hola”)

          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

    • Uziel

      chmod le da permisos al script, print imprime lo que le ordenas y raw_input() espera a que ingreses algo para salir.

      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

  26. rocket

    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? :P

    Responder

    • kart35

      intenta poniendole parentesis luego del print
      print (“hola”)

      para una prueba intenta esto:
      while(1) print (“hola”)

      Responder

  27. ice

    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

    Responder

  28. Berenice

    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

    Responder

  29. [...] http://mundogeek.net/archivos/2008/01/16/mi-primer-prog… [...]

    Responder

  30. Cézar

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

    Responder

    • anderson

      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 :)

      Responder

  31. javier

    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

    Responder

  32. pablo

    hola quisiera saber como convierto en binario una aplicacion python me baje el codigo fuente lo corro pero quisiera compilarlo

    Responder

  33. Libertcharrua

    Hola, trato de aprender python por hobby no mas muy util tu info gracias

    Responder

  34. julianv

    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

    Responder

    • anderson

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

      Responder

  35. William Quevedo

    Muy bien para comenzar. Ya sé que Python funciona.
    Muchas Gracias

    Responder

  36. bueno el phyton es bueno y es lenguaje de programacon para poder crear toda clase de aplicaciones

    Responder

  37. Gintaras

    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 :D

    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: “)

    Responder

  38. [...] Si no sabes como correr un script visita “Mi primer programa en Python“ [...]

    Responder

  39. Anónimo

    Como puedo hacer una agenda en python?

    Responder

  40. Kevin

    Zootropo Como puedo hacer una agenda en python?

    Responder

    • anderson

      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()

      Responder

      • anderson

        ahmm el join q ves ahi me olvide quitarlo estaba probando pero no afecta en nada

        Responder

      • alvaro

        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

        Responder

  41. Buen tuto lo estoy siguiendo para ayudarle a mi hijo y ver si me puedo llegar a el, gracias soy marcelo de peru

    Responder

  42. pabinho

    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

    Responder

    • macalix

      Hola yo tengo el mismo problema que alguin nos responda, me urge aprender python ojala ns puedan ayudar.

      Responder

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

    Responder

  44. Gamma

    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

    Responder

    • Jorge

      Hay tutoriales en youtube muy buenos…te agrego al msn a ver cuando te conectas a ver si nos podemos asesora unos a otros :)

      Responder

  45. Jorge

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

    Responder

  46. Annkho

    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

    Responder

  47. Maria

    como puedo hacer un buscador en python que contenga 5 paginas web y que cuando busque cada archivo lo meta en diccionario

    Responder

  48. jonas el bravo

    Hola GEEK gracias
    por ti me dan ganas de aprender mas el python
    vamos! adelante a seguir posteando!!!

    Responder

  49. azarel desde Panama

    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.

    Responder

  50. Edson

    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.

    Responder

    • EL_PERRO

      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

Deja un comentario