Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Desafio Hora da Prática: Python para Data Science - Funções

lista = [16, 14, 63, 65, 17, 99, 70, 11, 20, 48, 79, 32, 17, 89, 12, 25, 66]

print (f'A lista possui {len(lista)} números em que o maior número é {max(lista)} e o menor número é {min(lista)}. A soma dos valores pares presentes nela é igual a {sum(lista)}.')
numero = int(input('Digite um número: '))

def tabuada(numero: int):
  
  print (f'Tabuada do {numero}:')
  for i in range(11):
    print (f'{numero} x {i} = {numero * i}')

tabuada(numero)
lista = [97, 80, 94, 88, 80, 1, 16, 53, 62, 32, 24, 99]

def mult_3(lista: list):
  mult_3 = []
  for numero in lista:
    if numero % 3 == 0:
      mult_3.append(numero)
  return mult_3

mult_3(lista)
lista = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

list(map(lambda x: x**2, lista))
notas = []

for i in range(5):
  notas.append(float(input(f'Digite a nota {i+1}: ')))
  
def media (lista):
  lista.remove(max(lista))
  lista.remove(min(lista))
  return sum(lista) / len(lista)

print (f'Nota da manobra: {media(notas)}')
notas = []

for i in range(1,5):
  nota = float(input(f"Digite a {i}ª nota: "))
  notas.append(nota)

def cadastro(lista):
  maior = max(lista)
  menor = min(lista)
  media = sum(lista) / len(lista)
  if media >= 6:
    situacao = "Aprovado(a)"
  else:
    situacao = "Reprovado(a)"
  
  return (media, maior, menor, situacao)

media, maior, menor, situacao = cadastro(notas)

print(f"O(a) estudante obteve uma media de {media}, com a sua maior nota de {maior} pontos e a menor nota de {menor} pontos e foi {situacao}")
nome = ["joão", "MaRia", "JOSÉ"]
sobrenome = ["SILVA", "souza", "Tavares"]

print (f'Nome completo: {list(map(lambda nome, sobrenome: nome.capitalize() + " " + sobrenome.capitalize(), nome, sobrenome))}')
gols_marcados = [2, 1, 3, 1, 0]
gols_sofridos = [1, 2, 2, 1, 3]

def calcula_pontos(gols_marcados, gols_sofridos):
  pontos = 0
  for i in range(len(gols_marcados)):
    if gols_marcados[i] > gols_sofridos[i]:
      pontos += 3
    elif gols_marcados[i] == gols_sofridos[i]:
      pontos += 1
  aprov = pontos / (len(gols_marcados) * 3) * 100
  return pontos, aprov

pontos, aprov = calcula_pontos(gols_marcados, gols_sofridos)

print (f'A pontuação do time foi de {pontos} e seu aproveitamento foi de {round(aprov,2)}%')
dias = int(input("Quantas diárias? "))
cidade = input("Qual a cidade? [Salvador, Fortaleza, Natal ou Aracaju]: ").lower()
distancias = [850, 800, 300, 550]
passeio = [200, 400, 250, 300]
km_l = 14
gasolina = 5

def gasto_hotel(dias):
    return 150 * dias

def gasto_gasolina(cidade):
    if cidade == "salvador":
        return (2 * distancias[0] * gasolina) / km_l 
    elif cidade == "fortaleza":
        return (2 * distancias[1] * gasolina) / km_l 
    elif cidade == "natal":
        return (2 * distancias[2] * gasolina) / km_l 
    elif cidade == "aracaju":
        return (2 * distancias[3] * gasolina) / km_l 

def gasto_passeio(cidade, dias):
    if cidade == "salvador":
        return passeio[0] * dias
    elif cidade == "fortaleza":
        return passeio[1] * dias
    elif cidade == "natal":
        return passeio[2] * dias 
    elif cidade == "aracaju":
        return passeio[3] * dias 

gastos = gasto_hotel(dias) + gasto_gasolina(cidade) + gasto_passeio(cidade, dias)
print(f"Com base nos gastos definidos, uma viagem de {dias} dias para {cidade.capitalize()} saindo de Recife custaria {round(gastos, 2)} reais")
frase = "Aprender Python aqui na Alura é muito bom"
frase

frase = "Aprender Python aqui na Alura é muito bom"

frase = frase.replace(',', ' ').replace('.', ' ').replace('!', ' ').replace('?', ' ')

palavras = frase.split()

palavras

tamanho_minimo = 5

palavras_filtradas = list(filter(lambda palavra: len(palavra) >= tamanho_minimo, palavras))

palavras_filtradas
1 resposta
solução!

Oi! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Você desenvolveu uma sequência de funções muito bem organizadas, e foi interessante ver como aplicou map, filter e lambda para manipulação de listas. Continue assim!

Uma dica interessante para o futuro é usar o método join() para transformar listas de strings em uma única frase. Veja este exemplo:


palavras = ['Aprender', 'Python', 'é', 'legal']
frase = ' '.join(palavras)
print(frase)

Esse código une as palavras com espaços, formando a frase 'Aprender Python é legal'.

Abraços e bons estudos!

Alura

Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!