1
resposta

[Dúvida] Método randrange

Problema 8: Para diversificar e atrair novos(as) clientes, uma lanchonete criou um item misterioso em seu cardápio chamado "salada de frutas surpresa". Neste item, são escolhidas aleatoriamente 3 frutas de uma lista de 12 para compor a salada de frutas da pessoa cliente. Crie o código que faça essa seleção aleatória de acordo com a lista abaixo:

frutas = ["maçã", "banana", "uva", "pêra", 
          "manga", "coco", "melancia", "mamão",
          "laranja", "abacaxi", "kiwi", "ameixa"]

from random import randrange
randrange(12)
print(f'A salada de frutas surpresa é: {frutas[randrange(12)], frutas[randrange(12)], frutas[randrange(12)]}')

Nessa solução ele retorna o que foi pedido, mas pensei em usar para os "sets" ao invés de uma lista simples, aí me deparei com o problema dos "sets" não serem ordenados, como eu poderia usar esse método com os "sets"?

1 resposta

Olá, Pedro, tudo bem?

Já que você quer usar sets, você pode realizar a seleção aleatória com a lista e, depois, transformar a lista em um set caso você queira evitar duplicações.

  • Usando a lista original de frutas
import random


frutas = ["maçã", "banana", "uva", "pêra", 
          "manga", "coco", "melancia", "mamão",
          "laranja", "abacaxi", "kiwi", "ameixa"]
  • Selecionando aleatoriamente 3 frutas da lista, permitindo repetição
salada = [random.choice(frutas) for _ in range(3)]
  • Exibindo a salada de frutas como um set para remover duplicatas
salada_unica = set(salada)

print(f'A salada de frutas surpresa é: {salada}')
print(f'Sem frutas repetidas: {salada_unica}')

Espero ter ajudado.

Qualquer dúvida, não hesite em compartilhar no fórum.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!