Logo Studenta

Ayudantía 11 - Solución

Esta es una vista previa del archivo. Inicie sesión para ver el archivo original

# -*- coding: utf-8 -*-
"""
"""
#%% Pregunta 1 Listas
numero = int(input("Dígame cuántas palabras tiene la lista: "))
if numero < 1:
 print("Lista sin determinar")
else:
 lista = []
 for i in range(numero):
 print("Dígame la palabra", str(i + 1) + ": ", end="")
 palabra = input()
 lista += [palabra]
 print("La lista creada es:", lista)
 buscar = input("Dígame la palabra a buscar: ")
 contador = 0
 for i in lista:
 if i == buscar:
 contador += 1;
 if contador == 0:
 print("La palabra '", buscar, "' no aparece en la lista.")
 elif contador == 1:
 print("La palabra '", buscar,"' aparece una vez en la lista.")
 else:
 print("La palabra '", buscar,"' aparece", contador, "veces en la lista.")
#%% Pregunta 2 Listas
sacar= [".",",",";",":","?","¿","!","¡"] 
 
frase= input("Ingrese frase a analizar:")
 
for simbolo in sacar:
 frase=frase.replace(simbolo, "")
 
listaFrase=frase.split()
 
palabras=[]
cantidad=[]
 
for palabra in listaFrase:
 palabraIndice=palabra.lower()
 if palabraIndice not in palabras:
 palabras.append(palabraIndice)
 cantidad.append(1)
 else:
 cantidad[palabras.index(palabraIndice)]+=1
 
palabraMaxima=palabras[cantidad.index(max(cantidad))]
print("La palabra que mas se repite es:", palabraMaxima)
#%% Pregunta 1 Funciones y diccionario
def validar(email):
 caracter="@"
 for i in email:
 if i==caracter:
 return True
 return False
direccion=input("Tu email: ")
if validar(direccion):
 print("Dirección es valida")
else:
 print("Dirección inválida")
#%%Pregunta 2 Funciones y diccionario
def es_bisiesto(t):
 return t%400 == 0 or (t%100 !=0 and t%4 ==0)
print("Comprobador de años bisiestos")
fecha=int(input("Escriba un año y le dire si es bisiesto:"))
if es_bisiesto(fecha):
 print("El año", fecha, "es un año bisiesto")
else:
 print("El año", fecha, "no es un año bisiesto")
#%% Pregunta 3 Funciones y diccionario
def cargarSocios(socios):
 numero=int(input("Número de socio (0 para cortar): "))
 while numero!=0:
 nombre=input("Nombre y apellido: ")
 fecha=input("Fecha de ingreso (DDMMAAAA): ")
 cuota=input("¿Cuota al día? s/n: ")
 socios[numero]=[nombre,fecha,cuota.lower()=="s"]
 numero=int(input("Número de socio (0 para cortar): "))
 return socios
 
def modificarFecha(socios, fecha_anterior, fecha_nueva):
 for datos in socios.values():
 if datos[1]==fecha_anterior:
 datos[1]=fecha_nueva
 return socios
 
def numeroSocio(socios, nombre):
 for numero,datos in socios.items():
 if datos[0].lower()==nombre.lower():
 return numero
 return 0
 
def formatoFecha(fecha):
 return fecha[:2]+"/"+fecha[2:4]+"/"+fecha[4:]
 
def imprimirListado(socios):
 for numero,datos in socios.items():
 print("-Número:",numero)
 print("-Nombre:",datos[0])
 print("-Ingresó:", formatoFecha(datos[1]))
 if datos[2]:
 print("-Cuota al día")
 else:
 print("-En deuda")
 
socios_activos={1:["Andres Kipreos","03032020",True], 2:["Agustin Lagos","03032020",True], 3:["Stefan Elbl","03032020",True]}
 
print("***Cargar socios")
socios_activos=cargarSocios(socios_activos)
 
print("El club tiene", len(socios_activos), "socios")
 
print("***Registrar pago de cuotas")
numero=int(input("Número de socio: "))
socios_activos[numero][2]=True
 
print("***Modificando fecha de ingreso...")
socios_activos=modificarFecha(socios_activos, "13032020", "14032020")
 
print("***Eliminar socio")
nombre=input("Nombre y apellido: ")
numero=numeroSocio(socios_activos, nombre)
if numero in socios_activos:
 del socios_activos[numero]
 
imprimirListado(socios_activos)

Otros materiales