Lab 01: Introducción a Python

En clase se va a utilizar el lenguaje de programación Python a lo largo del semestre para aprender a programar e introducir conceptos básicos de las Ciencias de Cómputos. Este laboratorio tiene como propósito instruir al estudiante a la práctica de este lenguaje. Al final del laboratorio, el estudiante tendrá una consola de Python para codificar su laboratorio. Favor de seguir las instrucciones paso por paso y favor de no saltar secciones.

Objetivos

En este laboratorio los estudiantes:

Python es un lenguaje de programación de alto nivel, diseñado para la legibilidad de código y aprendizaje. Aunque no es necesario para el curso, se puede descargar y encontrar más información del mismo aquí. Empezemos!

Jugando con Python

Python puede utilizarse como una calculadora, con las operaciones de suma, resta, multiplicación y división. Por ejemplo:

>> 5 + 3  # devuelve 8
8
>> 5 * -2 # devuelve -10
-10
>> 3 - 5  # devuelve -2
-2
>> 5/2    # devuelve 2.5, el cociente
2.5
>> 5//2.0  # devuelve 2.0, la parte entera del cociente
2
>> 5 - 2.5 * 10 # El orden de operaciones se mantiene
-20
>> 2**3   # 2 a la 3, devuelve 8
8

Note que la división de enteros solo devuelve la parte entera del cociente. Esto tiene que ver con los tipos de datos en Python (no se preocupe por ahora). También, se pueden escribir comentarios. Un comentario es algo que ignora el programa, se utiliza para legibilidad y explicar el código mas a fondo. En Python, un comentario se escribe usando #.

Para guardar un dato en un programa, utilizamos el concepto de una variable. Una variable es un nombre o identificador único en el programa el cual es guardado en la memoria (primaria) de la computadora. Es importante recalcar que para usar una variable, su nombre:

  1. Solo debe contener números, letras y “underscore”.
  2. No puede empezar con un número.
  3. No puede contener espacios.
  4. No puede ser una palabra reservada (un “keyword”).

Ahora, vea el siguiente código:

>> a = 10     # el operador de asignación es =
>> b = a + 10 # b contiene 20
>> b
20
>> a = a + b  # a contiene 30
>> a
30

En la primera instrucción, la variable a contiene el entero 10. Luego, la variable b contiene 20. Finalmente, la variable a contiene la suma de a y b, 30. Note que el operador de asignación, = asigna un valor a una variable.

Nuestro lenguaje provee maneras muy fáciles para manejar datos de entrada y salida. La palabra input() pide al usuario datos. La palabra print() se utiliza para imprimir a la pantalla algún mensaje o dato. Mire el siguiente código y haga click en “Run” para que vea el resultado del programa, el cual pide su nombre, lo guarda en la variable su_nombre y lo imprime en la pantalla. Luego, practique lo aprendido aquí:


(Input_Output)


Se debe tener mucho cuidado usando input() ya que por defecto siempre guarda un string (cadena de caracteres, como su nombre). Si se quiere guardar un número se debe utilizar la palabra int() la cual convierte un string a un número entero. En el siguiente ejemplo, la primera línea muestra como hacer esto. Siga las instrucciones en el bloque de código:


(Ejemplo_int)


Algunos Tipos de Datos

Los tipos de datos nativos de Python que hemos utilizado hasta ahora son los int, que son enteros como el número 5 y los floats, los cuales son números reales, como el 2.456. Otro tipo de dato en Python que usamos fue una cadena de caracteres, mejor conocido como string. En el código anterior, la variable su_nombre guarda un string si se le proveen letras. Otro tipo de de dato (no nativo) es una Lista. Una Lista, es un objeto que contiene múltiples datos. Por ahora, piense en una lista como un pedazo de memoria (una variable) que puede tener varios datos asociados a ella. Estudie el siguiente código:

(Listas_y_strings)

La primera instrucción guarda el string Arce en la variable un_string. Luego, se declara una lista vacía. La tercera línea es importante: L2 contiene tres elementos: en la primera posición contiene -1, en la segunda 10.3 y en la tercera lo que tiene guardado la variable un_string. La última instrucción, imprime el primer elemento de L2. Es importante ver que, al igual que otros lenguajes, en Python se empieza a contar posiciones desde 0 y no desde 1. ¿Qué imprimiría print(L2[1])? Intentelo!

Lab: Información de Contacto

Para practicar lo aprendido, usted desarrollará un programa donde guardará la información de contacto de una persona: su nombre, apellido, edad, teléfono y su email. Además, determinará si es mayor de edad usando una fórmula sencilla. Siga las siguientes instrucciones:

  1. Pida al usuario su nombre y guárdelo en una variable. Haga lo mismo para el apellido, edad, teléfono y correo electrónico de la persona.
  2. Cree una lista llamada Contacto, que contendrá la información del punto 1.
  3. Despliege un mensaje por cada elemento de la lista. Por ejemplo, para el nombre debe desplegar, Su nombre es: El_nombre_insertado.
  4. Finalmente, reste 18 a la edad e imprima este valor (Si aparece un número negativo en la pantalla no es mayor de edad). Se puede hacer en una línea!

Recuerde, debe imprimir a la pantalla los elementos contenidos en la lista, no las variables. Repase la sección anterior para ver como accesar los elementos de una lista.

Use el siguiente espacio para codificar su laboratorio:


(Lab_1)


Para Entregar: Luego de terminar su laboratorio, haga “copy/paste” de su código en un file. Incluya su nombre (como un comentario) en la primera línea del file. Guarde el file con el nombre lab1.py. Ingrese a la clase registrada en moodle y haga “upload” de su file. Luego de entregar el lab, favor de llenar este cuestionario. De surgir alguna duda con respecto al lab, puede contactarme a mi correo electrónico: edwardo.rivera@upr.edu.

Fecha de Entrega: Miércoles 4 de febrero del 2015, antes de las 11:55pm en moodle.

Científico del día: Ada Lovelace. Se le considera como el primer programador del mundo. Hizo el primer algoritmo para la máquina mecánica analítica de Charles Babbage, aún sin haberse construído. Un lenguaje de programación, Ada, lleva su nombre. Puede leer más en Wikipedia.