1 usuario conectado

Sugerir un plato español en Python

Comparte esto

 
Escribe un código Python que tome un ingrediente principal (por ejemplo, "pollo", "pasta", "verduras") y te sugiera aleatoriamente un plato típico español que lo incluya.

.


Más ejercicios




Mostrar/Ocultar ejercicio resuelto


  Solución al Ejercicio: Sugerir un plato español

📋 Copiar código


import random

def sugerir_plato_espanol(ingrediente_principal):
  """
  Toma un ingrediente principal y sugiere aleatoriamente un plato típico español que lo incluya.

  Args:
    ingrediente_principal: El ingrediente principal (cadena de texto).

  Returns:
    Un mensaje (cadena de texto) con la sugerencia del plato.
  """
  platos_por_ingrediente = {
      "pollo": ["Paella de pollo", "Pollo al ajillo", "Croquetas de pollo", "Empanadillas de pollo"],
      "pasta": ["Fideuà", "Macarrones con chorizo", "Canelones"],
      "verduras": ["Gazpacho", "Salmorejo", "Pisto manchego", "Escalivada"],
      "pescado": ["Paella de marisco", "Bacalao al pil pil", "Sardinas a la plancha"],
      "cerdo": ["Cocido madrileño", "Lomo a la plancha", "Chorizo a la sidra"],
      "arroz": ["Paella valenciana", "Arroz negro", "Arroz a banda"]
  }

  ingrediente_lower = ingrediente_principal.lower()
  if ingrediente_lower in platos_por_ingrediente:
    plato_sugerido = random.choice(platos_por_ingrediente[ingrediente_lower])
    return f"Con '{ingrediente_principal}', te sugiero probar: ¡{plato_sugerido}!"
  else:
    return f"No tengo muchas sugerencias de platos españoles con '{ingrediente_principal}' como ingrediente principal en mi lista. ¡Quizás puedas buscar recetas online!"

# Ejemplo de uso
ingrediente1 = "pollo"
sugerencia1 = sugerir_plato_espanol(ingrediente1)
print(sugerencia1)

ingrediente2 = "pasta"
sugerencia2 = sugerir_plato_espanol(ingrediente2)
print(sugerencia2)

ingrediente3 = "ternera"
sugerencia3 = sugerir_plato_espanol(ingrediente3)
print(sugerencia3)

ingrediente4 = "ARROZ"
sugerencia4 = sugerir_plato_espanol(ingrediente4)
print(sugerencia4)


Explicación del Código:

  1. import random:

    • Importa el módulo random para poder elegir un plato aleatorio de la lista asociada al ingrediente.
  2. def sugerir_plato_espanol(ingrediente_principal)::

    • Define una función llamada sugerir_plato_espanol que toma el ingrediente principal (ingrediente_principal) como argumento.
  3. """Docstring...""":

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

    • Se crea un diccionario llamado platos_por_ingrediente. Las claves son ingredientes principales (en minúsculas) y los valores son listas de platos típicos españoles que suelen incluir ese ingrediente.
  5. ingrediente_lower = ingrediente_principal.lower():

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

    • Se verifica si el ingrediente_lower existe como clave en el diccionario platos_por_ingrediente.
  7. plato_sugerido = random.choice(platos_por_ingrediente[ingrediente_lower]):

    • Si el ingrediente se encuentra en el diccionario, se elige aleatoriamente un plato de la lista asociada a ese ingrediente utilizando random.choice().
  8. return f"Con '{ingrediente_principal}', te sugiero probar: ¡{plato_sugerido}!":

    • Se devuelve un mensaje sugiriendo el plato aleatorio encontrado.
  9. else::

    • Si el ingrediente no se encuentra en el diccionario.
  10. return f"No tengo muchas sugerencias de platos españoles con '{ingrediente_principal}' como ingrediente principal en mi lista. ¡Quizás puedas buscar recetas online!":

    • Se devuelve un mensaje indicando que no se encontraron sugerencias para ese ingrediente en la lista.

     

  11. Ejemplo de uso:

    • Se definen varios ingredientes principales y se llama a la función sugerir_plato_espanol con cada uno para obtener una sugerencia de plato.