Curso Python para GUTL (Parte III)

Hola GUTL! Con la intención de darle continuación al cursillo de Python que publico @Ozkar hace unos meses, aquí les traigo una tercera parte… Si es primera vez que escuchas de Python, llégate por esta introducción y esta otra. Si ya tienes conocimientos avanzados de programación y buscas referencias, pues este artículo NO es para ti 🙁 .

En los post anteriores aprendimos a mostrar en la pantalla un mensaje con print(), y a aceptar entradas del usuario con raw_input(); conociendo solo estas dos funciones podemos hacer nuestro primer programa interactivo.

Primero la idea, necesitamos un programa que nos pregunte el nombre y la edad, para luego decirnos como nos llamamos y que tan viejos estamos. Lo haremos con un script de tan solo tres líneas de código.

Anteriormente usamos raw_input() para esperar a que el usuario presionara enter antes de terminar el programa, pero también podemos recoger un mensaje (palabras o números) del usuario, aunque para esto debemos asignarle una variable:

nombre = raw_input (‘Como te llamas?   ’)

Observa que le dimos una variable al valor, es decir, que lo que el usuario responda, se guarda en la variable “nombre” y así podemos acceder cuando lo necesitemos. Observa también que después del signo de pregunta, se deja un espacio antes de cerrar la comilla, esto es porque lo cualquier cosa que escriba el usuario, se muestra exactamente después de la comilla, sin espacio, por eso lo ponemos antes, pero pruébalo para que veas… bien, ya tenemos el nombre del usuario en la variable “nombre”, ahora a pedirle la edad.

edad = raw_input(‘Cuantos años tienes?:  ‘)

Tenemos aquí la edad y el nombre, ahora, solo nos queda mostrarlos, presta atención, que aquí hay un truquito muy útil, que te puede confundir un poco…. Veamos:

print(‘Hola ’ + nombre + ‘, a que tienes’ + edad + ‘ años’)

Wao, que paso aquí? Es un print() normal, excepto que también necesitamos mostrar las variables, así que literalmente las sumamos a la oración (+) en la posición que necesitemos, ponemos lo que queremos mostrar entre ‘comillas’, y le sumamos las variables, que NO van entre comillas, y como tooodo esto esta dentro del print(), lo encerramos todo en paréntesis(….). Para entender esto, pudes usar un print() solo para cada variable, todo esta en que experimentes…

Si te sale todo junto, sin espacios, recuerda que estos deben ir dentro de las comillas, porque cuando sumamos las variables, van justo pegadas a las comillas, sea antes o después, siempre tienes que tener esto en mente.

No entiendo bien eso de la variable:

Bien, es asi, cuando usamos raw_input() para recoger información del usuario, necesitamos guardarlo en algún lado, puedes mirar la variable como la “gaveta” en la cual guardar la información que recoges, en este caso, tenemos dos “gavetas” llamadas ‘nombre’ y ‘edad’ cada una guardando lo que le asignamos; estas variables se pueden llamar de cualquier forma, pero es fuertemente recomendado que su nombre  tenga que ver con su contenido; claro, tampoco puedes ponerles como nombres las funciones internas de Python(print, raw_input, y otras mas que iremos conociendo).

Bastante simple, verdad?, solo tienes que poner estas tres líneas en un archivo llamado miprograma.py y abrirlo como dice en los post anteriores…

Déjame saber en los comentarios si tuviste problemas entendiendo el contenido del post; y cualquier sugerencia para futuras publicaciones 🙂

¿Te resultó interesante? Compártelo ...



danielqba

Publicado por danielqba

Forma parte de GUTL desde el 7 agosto, 2013. si Linux te da la espalda, tócale el kernel

Este artículo tiene 25 comentarios

  1. print(‘Hola ’ + nombre + ‘, a que tienes’ + edad + ‘ años’)
    este modo no es portable, debería ser
    msj = ’ ’.join([‘Hola {name}, a que tienes {age} años’.format(name=nombre,age=edad)])
    print msj
    esta corre tanto en python 2 como en python 3 y además es multiplataforma.
    Saludos

  2. probando con python 2.6.6 el hacer esto:

    edad = raw_input(«cuantos años tienes?: «)

    me asigna a edad un string …. como podria hacer para q se reciba un int ¿algun tipo de casting?

  3. El ejemplo se puede lograr en una linea de una manera bastante simple de la siguiente manera:
    print ‘Hola %s, a que tienes %s años’ % (raw_input (‘Como te llamas? ‘), input(‘Cuantos años tienes?: ‘))

    Hablando de Python, acabo de terminar una aplicacion que hice en Python y con Qt4 para consultar la base de datos de etecsa, y funciona tanto en GNU/* como en Windows, como en MacOsX, como en FreeBSD. Permite incluso hacer consultas utilizando expresiones regulares. Me gustaria compartirla en algun FLISOL, o algo por el estilo.

  4. El script me dio bateos con las ‘ñ’
    Muestro el error debajo
    …..
    File «curso.py», line 3
    SyntaxError: Non-ASCII character ‘\xc3’ in file borrar.py on line 3, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
    …..

    Pero al agregarle
    # -*- coding: utf-8 -*-
    en la parte de arriba del fichero desparecio el problema.
    Esto me había pasado en ruby también y esa fue la solución que le di.
    Sldos

Los comentarios están cerrados.