Ejercicios día 2

De WikiEducator
Saltar a: navegación, buscar




Icon activity.jpg

Ejercicios de repaso

Icon present.gif
Tip: Echa un vistazo a Python para todos o a presentación de Facundo


  1. Dada una lista de usuarios con el siguiente formato:
      lista = ['usuario_1', 'usuario_2', 'usuario_3', ]

    Genera una nueva lista con parejas usuario, password . Puedes genera contraseñas aleatorias así:

     
     from random import choice
     import string
     ''.join([choice(string.letters + string.digits) for i in range(8)])
  2. Muestra el listado ordenado y numerado con el formato:
      1. usuario_1     xs8(977
      2. usuario_2     jK8865A
         ...
     10. usario_10     uu84klk
    

    Fíjate bien en que las columnas estén bien alineadas.






Icon activity.jpg

Ficheros

Icon present.gif
Tip: Teoría en p. 82 de Python para todos


Usa el siguiente fichero de texto: Fichero de usuarios

  1. Muestra los usuarios por orden alfabético
  2. Muestra los usuarios por orden de puesto
  3. Crea un nuevo fichero de texto con los usuarios ordenados por puesto
  4. Controla la excepción de apertura del fichero. Si no existe o si no hay acceso de lectura, muestra el mensaje correspondiente
  5. Almacena los usuarios en un fichero tipo shelve. Usa como clave el nombre de usuario y como valor su puesto






Icon activity.jpg

Funciones

Icon present.gif
Tip: Teoría en p. 36 de Python para todos


  1. Función que pide un número entre 10 y 20 (ambos incluidos). Si el usuario introduce un número mayor o menor, la función volverá a pedir un número. Devuelve el número que ha introducido el usuario.
  2. Crea una función que dado el fichero de datos y el nombre de usuario, devuelva el número de puesto en que se encuentra, o -1 si no se encuentra el nombre de usuario
  3. Crea una función calcula total(fichero) que dado un fichero como éste poblacion.txt, escribe un nuevo fichero calculando los totales así: poblacion_total.txt






Icon activity.jpg

Clases y objetos

  1. Crea una clase Empleado.
    class Empleado(object):
        '''
        Clase Empleado que representa un empleado de nuestra empresa.
     
        Atributos: nombre, codigo, departamento (obligatorios al crear el objeto)
        Métodos:
             __init__(self, nombre, codigo, departamento)
             __str__(self) --> muestra en pantalla Nombre y departamento
        '''
  2. Crea una clase Equipo:
    class Equipo(object):
        '''
        Clase equipo que representa un equipo de trabajo.
     
        Atributos: nombre y miembros (lista de empleados)
        Métodos:
             __init__(self, nombre) --> crea un equipo vacío
             incorpora(self, empleado) --> Añade el empleado al equipo
             quita(self, empleado) --> quita el empleado del equipo
             __str__(self) --> muestra el nombre del equipo y una lista con los nombre de sus miembros
             guarda(self, fichero) --> almacena el equipo en un fichero tipo shelve usando como clave el nombre del equipo
        '''
  3. Crea un programa que importe las clases anteriores, cree 5 empleados, 2 equipos, inserte los 3 primeros empleados en un equipo y los dos siguientes en otro, los almacenará en un fichero shelve llamado equipos.dat y a continuación hará un listado de los equipos almacenados en el fichero.