Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Desafio

practicas_data_science.py

import random import math import datetime

1 - Leer lista y mostrar tamaño, máximo, mínimo y suma

lista = [16, 14, 63, 65, 17, 99, 70, 11, 20, 48, 79, 32, 17, 89, 12, 25, 66]
tamano = len(lista)
mayor  = max(lista)
menor  = min(lista)
suma   = sum(lista)
print(f"La lista tiene {tamano} números, donde el mayor es {mayor} y el menor es {menor}. La suma de los valores es {suma}.")

2 - Tabla de multiplicar del 1 al 10 para un número elegido

n = int(input("Ingresa un número entero para su tabla de multiplicar: "))
print(f"Tabla del {n}:")
for i in range(0, 11):
    print(f"{n} x {i} = {n * i}")

3 - Filtrar múltiplos de 3 de una lista dada

datos = [97, 80, 94, 88, 80, 1, 16, 53, 62, 32, 24, 99]
multiplos_de_3 = [x for x in datos if x % 3 == 0]
print("Múltiplos de 3:", multiplos_de_3)

4 - Lista de cuadrados usando lambda y map()

origen = [1,2,3,4,5,6,7,8,9,10]
cuadrados = list(map(lambda x: x**2, origen))
print("Cuadrados:", cuadrados)

Aplicando a proyectos

5 - Calcular la puntuación de un atleta a partir de 5 notas

notas = []
for i in range(1, 6):
    nota = float(input(f"Ingrese la nota #{i}: "))
    notas.append(nota)
promedio = sum(notas) / len(notas)
print(f"Puntuación final (promedio): {promedio:.2f}")

6 - Función que procesa 4 notas y retorna estadísticas y situación

def procesa_notas(notas):
mayor   = max(notas)
menor   = min(notas)
media   = sum(notas) / len(notas)
situacion = "Aprobado(a)" if media >= 60 else "Reprobado(a)"
return mayor, menor, media, situacion

entradas = [float(input(f"Ingrese nota #{i}: ")) for i in range(1,5)]
mayor, menor, media, situacion = procesa_notas(entradas)
print(f"El estudiante obtuvo una media de {media:.2f}, con la mayor nota de {mayor:.2f} puntos y la menor nota de {menor:.2f} puntos y fue {situacion}.")

7 - Normalizar nombres y apellidos y crear lista de nombres completos

nombres   = ["juan", "MaRia", "JOSÉ"]
apellidos = ["SILVA", "sosa", "Tavares"]
completos = list(map(lambda na: na[0].capitalize() + " " + na[1].capitalize(),
                     zip(nombres, apellidos)))
print("Nombres completos:", completos)

8 - Calcular puntos y rendimiento de un equipo de fútbol

def calcula_puntos(goles_marcados, goles_recibidos):
puntos = 0
partidos = len(goles_marcados)
for gm, gr in zip(goles_marcados, goles_recibidos):
    if gm > gr:
        puntos += 3
    elif gm == gr:
        puntos += 1
    # si gm < gr: 0 puntos
max_puntos = partidos * 3
rendimiento = (puntos / max_puntos) * 100
return puntos, rendimiento

goles_marcados  = [2, 1, 3, 1, 0]
goles_recibidos = [1, 2, 2, 1, 3]
puntos, desempeno = calcula_puntos(goles_marcados, goles_recibidos)
print(f"La puntuación del equipo fue {puntos} y su rendimiento fue {desempeno:.2f}%")

9 - Cálculo de gastos de viaje

def gasto_hotel(dias):
return 150 * dias

def gasto_gasolina(distancia_km):
consumo = 14  # km por litro
precio_litro = 5  # reales
# ida y vuelta
litros = (distancia_km * 2) / consumo
return litros * precio_litro

def gasto_paseo(dias, ciudad):
# índices: 0=Salvador, 1=Fortaleza, 2=Natal, 3=Aracaju
gastos_diarios = [200, 400, 250, 300]
return gastos_diarios[ciudades.index(ciudad)] * dias

ciudades = ["Salvador", "Fortaleza", "Natal", "Aracaju"]
distancias = [850,       800,         300,      550]

dias = 3
ciudad = "Salvador"
idx = ciudades.index(ciudad)
total_hotel    = gasto_hotel(dias)
total_gasolina = gasto_gasolina(distancias[idx])
total_paseo    = gasto_paseo(dias, ciudad)
total = total_hotel + total_gasolina + total_paseo
print(f"Con base en los gastos definidos, un viaje de {dias} días a {ciudad} desde Recife costaría {total:.2f} reales.")

10 - Filtrar palabras de longitud >= 5 de una frase usando lambda y filter()

frase = "Aprender Python aquí en Alura es muy bueno"
for p in [",", ".", "!", "?"]:
    frase = frase.replace(p, " ")
palabras = frase.split()
largas = list(filter(lambda w: len(w) >= 5, palabras))
print("Palabras con 5 o más caracteres:", largas)
1 respuesta

Hola , espero que estés muy bien.

Felicitaciones por tu aprendizaje. Estamos priorizando el foro para postear dudas, así optimizamos el tiempo de respuesta para ustedes.

Para no dejar de compartir los códigos, actividades y ejercicios que realizas, creamos un canal en Discord (#compartetucodigo) donde puedes compartirlos, dar y sugerir mejoras con el resto de tus compañeros.

Un saludo.

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios