2 usuarios conectados

Sugerir actividad relajante en Python

Comparte esto

 
Escribe un código Python que tome una actividad relajante ("leer", "escuchar música", "meditar", "tomar un baño", "escribir") y te genere aleatoriamente un consejo breve para disfrutar mejor de esa actividad.
.


Más ejercicios




Mostrar/Ocultar ejercicio resuelto


  Solución al Ejercicio: Sugerir actividad relajante

📋 Copiar código


import random

def mejorar_actividad_relajante(actividad):
  """
  Toma una actividad relajante y genera aleatoriamente un consejo breve para disfrutarla mejor.

  Args:
    actividad: La actividad relajante (cadena de texto).

  Returns:
    Un mensaje (cadena de texto) con el consejo para disfrutar mejor la actividad.
  """
  consejos_por_actividad = {
      "leer": ["Encuentra un rincón cómodo con buena luz.", "Prepara una bebida caliente para acompañar tu lectura.", "Apaga las notificaciones del móvil para evitar distracciones.", "Elige un libro que realmente te atrape.", "No te presiones a terminarlo rápido, disfruta del viaje."],
      "escuchar música": ["Ponte unos auriculares de buena calidad para una inmersión total.", "Crea una lista de reproducción con tus canciones favoritas.", "Cierra los ojos y concéntrate en la música.", "Prueba a escuchar música instrumental para relajarte.", "Ajusta el volumen a un nivel cómodo."],
      "meditar": ["Encuentra un lugar tranquilo donde no te interrumpan.", "Siéntate en una postura cómoda pero erguida.", "Concéntrate en tu respiración.", "No te juzgues si tu mente divaga, simplemente vuelve al presente.", "Usa una aplicación de meditación guiada si eres principiante."],
      "tomar un baño": ["Añade sales de baño o aceites esenciales relajantes al agua.", "Pon música suave o enciende algunas velas.", "Asegúrate de que la temperatura del agua sea agradable.", "Tómate tu tiempo, no te apresures.", "Ten una toalla suave esperándote al salir."],
      "escribir": ["Encuentra un cuaderno o una aplicación que te guste usar.", "Escribe sin preocuparte por la gramática o la perfección al principio.", "Elige un momento del día en el que te sientas más creativo.", "Escribe sobre lo que sientas, sin filtros.", "Revisa y edita después de dejar reposar tus escritos."]
  }

  actividad_lower = actividad.lower()
  if actividad_lower in consejos_por_actividad:
    consejo_aleatorio = random.choice(consejos_por_actividad[actividad_lower])
    return f"Para disfrutar mejor de '{actividad}', un consejo es: {consejo_aleatorio}"
  else:
    return f"No tengo consejos específicos para la actividad '{actividad}' en mi lista, ¡pero espero que la disfrutes de todos modos!"

# Ejemplo de uso
actividad1 = "leer"
consejo1 = mejorar_actividad_relajante(actividad1)
print(consejo1)

actividad2 = "meditar"
consejo2 = mejorar_actividad_relajante(actividad2)
print(consejo2)

actividad3 = "dormir"
consejo3 = mejorar_actividad_relajante(actividad3)
print(consejo3)

actividad4 = "ESCUCHAR MÚSICA"
consejo4 = mejorar_actividad_relajante(actividad4)
print(consejo4)

Explicación del Código:

  1. import random:

    • Importa el módulo random para poder elegir un consejo aleatorio de la lista asociada a la actividad.
  2. def mejorar_actividad_relajante(actividad)::

    • Define una función llamada mejorar_actividad_relajante que toma el nombre de una actividad relajante (actividad) como argumento.
  3. """Docstring...""":

    • La cadena de documentación explica la función, su argumento y lo que devuelve.
  4. consejos_por_actividad = {...}:

    • Se crea un diccionario llamado consejos_por_actividad. Las claves son actividades relajantes (en minúsculas) y los valores son listas de consejos para disfrutar mejor de esa actividad.
  5. actividad_lower = actividad.lower():

    • Se convierte la actividad a minúsculas para que la búsqueda en el diccionario sea insensible a mayúsculas y minúsculas.
  6. if actividad_lower in consejos_por_actividad::

    • Se verifica si la actividad_lower existe como clave en el diccionario.
  7. consejo_aleatorio = random.choice(consejos_por_actividad[actividad_lower]):

    • Si la actividad se encuentra en el diccionario, se elige aleatoriamente un consejo de la lista asociada a esa actividad utilizando random.choice().
  8. return f"Para disfrutar mejor de '{actividad}', un consejo es: {consejo_aleatorio}":

    • Se devuelve un mensaje con el consejo aleatorio encontrado.
  9. else::

    • Si la actividad no se encuentra en el diccionario.
  10. return f"No tengo consejos específicos para la actividad '{actividad}' en mi lista, ¡pero espero que la disfrutes de todos modos!":

    • Se devuelve un mensaje indicando que no se encontraron consejos para esa actividad en la lista.

     

  11. Ejemplo de uso:

    • Se definen varias actividades relajantes y se llama a la función mejorar_actividad_relajante con cada una para obtener un consejo.