Ir para conteúdo
Fórum Script Brasil
  • 0

Exercicio sobre Fluxo condicional e repetições


Adriléia Moreira

Pergunta

Boa tarde, me chamo Adriléia e iniciei há menos de um mês um curso para iniciantes em Python, de analista de dados jr, e estou travada em 02 exercícios que não consigo finalizar, alguém poderia me ajudar?:

Tenho esta lista:

propaganda_online = [
  {'tempo_gasto_site'68.95'idade'35'renda_area'61833.90'tempo_gasto_internet'256.09'cidade''Wrightburgh''pais''Tunisia''clicou_no_ad'0},
  {'tempo_gasto_site'80.23'idade'31'renda_area'68441.85'tempo_gasto_internet'193.77'cidade''West Jodi''pais''Nauru''clicou_no_ad'0},
  {'tempo_gasto_site'69.47'idade'26'renda_area'59785.94'tempo_gasto_internet'236.50'cidade''Davidton''pais''San Marino''clicou_no_ad'0},
  {'tempo_gasto_site'68.37'idade'35'renda_area'73889.99'tempo_gasto_internet'225.58'cidade''South Manuel''pais''Iceland''clicou_no_ad'0},
  {'tempo_gasto_site'88.91'idade'33'renda_area'53852.85'tempo_gasto_internet'208.36'cidade''Brandonstad''pais''Myanmar''clicou_no_ad'0},
  {'tempo_gasto_site'None'idade'48'renda_area'24593.33'tempo_gasto_internet'131.76'cidade''Port Jefferybury''pais''Australia''clicou_no_ad'1},
  {'tempo_gasto_site'74.53'idade'30'renda_area'68862.00'tempo_gasto_internet'221.51'cidade''West Colin''pais''Grenada'},
  {'tempo_gasto_site'69.88'idade'20'renda_area'55642.32'tempo_gasto_internet'183.82'cidade''Ramirezton''pais''Ghana''clicou_no_ad'0}
]
 
E para iterar por ela devo usar este código:
 
for dado_de_usuario in propaganda_online:
print(dado_de_usuario)
 
Desta lista, eu devo criar uma lista chamada leads com a renda dos usuários que clicaram na propaganda, cheguei até aqui mas disseram que a função try/catch ainda está errada:
leads = []
 
for leads in propaganda_online:
  try:
    leads = ['clicou_no_ad'] > 0
    leads.append:()
    print(leads['leads'])
    print(leads)
  except Exception:
    print('Há usuários cuja informação de clique na propaganda não foi informada')
 
E além desta lista, tem que fazer outra lista chamada cidades com a cidade dos usuários que passaram mais de 70 segundos no site e não consigo sair disso:
 
cidades = []
 
for cidade in propaganda_online:
  try:
    cidade = ['tempo_gasto_site'] > 70
    cidades.append:()
    print(cidade['cidade'])
    print(cidades)
  except TypeError:
    print('Impossível descrever lista completa, pois há usuários com campo de tempo do site nulo.'
 
Se alguém puder me ajudar eu agradeço, pois não consigo avançar no curso sem finalizar! Desde já muito obrigada!


 
Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0
2 horas atrás, Adriléia Moreira disse:
for leads in propaganda_online:
  try:
    leads = ['clicou_no_ad'] > 0
    leads.append:()
    print(leads['leads'])
    print(leads)
  except Exception:
    print('Há usuários cuja informação de clique na propaganda não foi informada')

 

tem alguns erros de sintaxe, tano o primeiro como o segundo tem os mesmos erros, se é um curso recomendo rever o material passado. de qualquer forma vou apontar algumas coisas para você ter uma referencia

#criando uma lista nova, e vazia
lead = []

#acrescentar um valor a lista
lead.append(valor)
Link para o comentário
Compartilhar em outros sites

  • 0

Boa noite.

Primeiro temos que entender que possui um dicionário dentro de uma lista, ou seja para acessar cada valor do dicionário eu preciso usar um for na lista e em seguida usar a chave pra pegar o valor.

Eu encontrei alguns erros em seu código, como por exemplo no for leads e no for cidades.

No seu código está:

leads = ['clicou_no_ad'] > 0

Deveria ser um if já que é uma condição.

if leads['clicou_no_ad'] > 0:

E a mesma coisa com o for cidades.

Consegui refazer o código e recomendo que você pesquise sobre listas, dicionários e tratamento de erros com try/except, sério é muito importante ser bem afiado nisso.

Meu codigo ficou assim, qualquer dúvida só responder aqui:

propaganda_online = [
  {'tempo_gasto_site': 68.95, 'idade': 35, 'renda_area': 61833.90, 'tempo_gasto_internet': 256.09, 'cidade': 'Wrightburgh', 'pais': 'Tunisia', 'clicou_no_ad': 0},
  {'tempo_gasto_site': 80.23, 'idade': 31, 'renda_area': 68441.85, 'tempo_gasto_internet': 193.77, 'cidade': 'West Jodi', 'pais': 'Nauru', 'clicou_no_ad': 0},
  {'tempo_gasto_site': 69.47, 'idade': 26, 'renda_area': 59785.94, 'tempo_gasto_internet': 236.50, 'cidade': 'Davidton', 'pais': 'San Marino', 'clicou_no_ad': 0},
  {'tempo_gasto_site': 68.37, 'idade': 35, 'renda_area': 73889.99, 'tempo_gasto_internet': 225.58, 'cidade': 'South Manuel', 'pais': 'Iceland', 'clicou_no_ad': 0},
  {'tempo_gasto_site': 88.91, 'idade': 33, 'renda_area': 53852.85, 'tempo_gasto_internet': 208.36, 'cidade': 'Brandonstad', 'pais': 'Myanmar', 'clicou_no_ad': 0},
  {'tempo_gasto_site': None, 'idade': 48, 'renda_area': 24593.33, 'tempo_gasto_internet': 131.76, 'cidade': 'Port Jefferybury', 'pais': 'Australia', 'clicou_no_ad': 1},
  {'tempo_gasto_site': 74.53, 'idade': 30, 'renda_area': 68862.00, 'tempo_gasto_internet': 221.51, 'cidade': 'West Colin', 'pais': 'Grenada'},
  {'tempo_gasto_site': 69.88, 'idade': 20, 'renda_area': 55642.32, 'tempo_gasto_internet': 183.82, 'cidade': 'Ramirezton', 'pais': 'Ghana', 'clicou_no_ad': 0}
]

clicked_list = []
cidades_list = []

# Clicou no AD
for row in propaganda_online:
  try:
    if row['clicou_no_ad'] > 0:
      clicked_list.append(row)
  except KeyError:
    print('Há usuários cuja informação de clique na propaganda não foi informada')

# Cidades
for row in propaganda_online:
  try:
    if row['tempo_gasto_site'] > 70:
      cidades_list.append(row['cidade'])
  except TypeError:
    print('Impossível descrever lista completa, pois há usuários com campo de tempo do site nulo.')

Espero ter ajudado em algo kkkk

Link para o comentário
Compartilhar em outros sites

  • 0
Em 04/01/2022 em 14:34, Adriléia Moreira disse:

Boa tarde, me chamo Adriléia e iniciei há menos de um mês um curso para iniciantes em Python, de analista de dados jr, e estou travada em 02 exercícios que não consigo finalizar, alguém poderia me ajudar?:

Tenho esta lista:

propaganda_online = [
  {'tempo_gasto_site'68.95'idade'35'renda_area'61833.90'tempo_gasto_internet'256.09'cidade''Wrightburgh''pais''Tunisia''clicou_no_ad'0},
  {'tempo_gasto_site'80.23'idade'31'renda_area'68441.85'tempo_gasto_internet'193.77'cidade''West Jodi''pais''Nauru''clicou_no_ad'0},
  {'tempo_gasto_site'69.47'idade'26'renda_area'59785.94'tempo_gasto_internet'236.50'cidade''Davidton''pais''San Marino''clicou_no_ad'0},
  {'tempo_gasto_site'68.37'idade'35'renda_area'73889.99'tempo_gasto_internet'225.58'cidade''South Manuel''pais''Iceland''clicou_no_ad'0},
  {'tempo_gasto_site'88.91'idade'33'renda_area'53852.85'tempo_gasto_internet'208.36'cidade''Brandonstad''pais''Myanmar''clicou_no_ad'0},
  {'tempo_gasto_site'None'idade'48'renda_area'24593.33'tempo_gasto_internet'131.76'cidade''Port Jefferybury''pais''Australia''clicou_no_ad'1},
  {'tempo_gasto_site'74.53'idade'30'renda_area'68862.00'tempo_gasto_internet'221.51'cidade''West Colin''pais''Grenada'},
  {'tempo_gasto_site'69.88'idade'20'renda_area'55642.32'tempo_gasto_internet'183.82'cidade''Ramirezton''pais''Ghana''clicou_no_ad'0}
]
 
E para iterar por ela devo usar este código:
 
for dado_de_usuario in propaganda_online:
print(dado_de_usuario)
 
Desta lista, eu devo criar uma lista chamada leads com a renda dos usuários que clicaram na propaganda, cheguei até aqui mas disseram que a função try/catch ainda está errada:
leads = []
 
for leads in propaganda_online:
  try:
    leads = ['clicou_no_ad'] > 0
    leads.append:()
    print(leads['leads'])
    print(leads)
  except Exception:
    print('Há usuários cuja informação de clique na propaganda não foi informada')
 
E além desta lista, tem que fazer outra lista chamada cidades com a cidade dos usuários que passaram mais de 70 segundos no site e não consigo sair disso:
 
cidades = []
 
for cidade in propaganda_online:
  try:
    cidade = ['tempo_gasto_site'] > 70
    cidades.append:()
    print(cidade['cidade'])
    print(cidades)
  except TypeError:
    print('Impossível descrever lista completa, pois há usuários com campo de tempo do site nulo.'
 
Se alguém puder me ajudar eu agradeço, pois não consigo avançar no curso sem finalizar! Desde já muito obrigada!


 

Você conseguiu concluir esse exercício, mesmo acompanhando as possíveis soluções aqui o meu ainda apresenta erros

Em 05/01/2022 em 21:51, lucasbazan disse:

Boa noite.

Primeiro temos que entender que possui um dicionário dentro de uma lista, ou seja para acessar cada valor do dicionário eu preciso usar um for na lista e em seguida usar a chave pra pegar o valor.

Eu encontrei alguns erros em seu código, como por exemplo no for leads e no for cidades.

No seu código está:

leads = ['clicou_no_ad'] > 0

Deveria ser um if já que é uma condição.

if leads['clicou_no_ad'] > 0:

E a mesma coisa com o for cidades.

Consegui refazer o código e recomendo que você pesquise sobre listas, dicionários e tratamento de erros com try/except, sério é muito importante ser bem afiado nisso.

Meu codigo ficou assim, qualquer dúvida só responder aqui:

propaganda_online = [
  {'tempo_gasto_site': 68.95, 'idade': 35, 'renda_area': 61833.90, 'tempo_gasto_internet': 256.09, 'cidade': 'Wrightburgh', 'pais': 'Tunisia', 'clicou_no_ad': 0},
  {'tempo_gasto_site': 80.23, 'idade': 31, 'renda_area': 68441.85, 'tempo_gasto_internet': 193.77, 'cidade': 'West Jodi', 'pais': 'Nauru', 'clicou_no_ad': 0},
  {'tempo_gasto_site': 69.47, 'idade': 26, 'renda_area': 59785.94, 'tempo_gasto_internet': 236.50, 'cidade': 'Davidton', 'pais': 'San Marino', 'clicou_no_ad': 0},
  {'tempo_gasto_site': 68.37, 'idade': 35, 'renda_area': 73889.99, 'tempo_gasto_internet': 225.58, 'cidade': 'South Manuel', 'pais': 'Iceland', 'clicou_no_ad': 0},
  {'tempo_gasto_site': 88.91, 'idade': 33, 'renda_area': 53852.85, 'tempo_gasto_internet': 208.36, 'cidade': 'Brandonstad', 'pais': 'Myanmar', 'clicou_no_ad': 0},
  {'tempo_gasto_site': None, 'idade': 48, 'renda_area': 24593.33, 'tempo_gasto_internet': 131.76, 'cidade': 'Port Jefferybury', 'pais': 'Australia', 'clicou_no_ad': 1},
  {'tempo_gasto_site': 74.53, 'idade': 30, 'renda_area': 68862.00, 'tempo_gasto_internet': 221.51, 'cidade': 'West Colin', 'pais': 'Grenada'},
  {'tempo_gasto_site': 69.88, 'idade': 20, 'renda_area': 55642.32, 'tempo_gasto_internet': 183.82, 'cidade': 'Ramirezton', 'pais': 'Ghana', 'clicou_no_ad': 0}
]

clicked_list = []
cidades_list = []

# Clicou no AD
for row in propaganda_online:
  try:
    if row['clicou_no_ad'] > 0:
      clicked_list.append(row)
  except KeyError:
    print('Há usuários cuja informação de clique na propaganda não foi informada')

# Cidades
for row in propaganda_online:
  try:
    if row['tempo_gasto_site'] > 70:
      cidades_list.append(row['cidade'])
  except TypeError:
    print('Impossível descrever lista completa, pois há usuários com campo de tempo do site nulo.')

Espero ter ajudado em algo kkkk

Cara, boa noite!
Suas dicas aqui ajudaram muito, porem no exercido de cidades ai, seguindo a mesma lógica sua, ainda assim continua dando erro na linha cidade.append(dado_de_usuario['cidade])

obs: no seu exemplo esta como row já no nosso esta como "dado_de_usuario", aparentemente a unica diferença

"NameError: name 'cidades_list' is not defined

 

Erro exercicio.png

Link para o comentário
Compartilhar em outros sites

  • 0
11 horas atrás, D_souza01 disse:

Você conseguiu concluir esse exercício, mesmo acompanhando as possíveis soluções aqui o meu ainda apresenta erros

Cara, boa noite!
Suas dicas aqui ajudaram muito, porem no exercido de cidades ai, seguindo a mesma lógica sua, ainda assim continua dando erro na linha cidade.append(dado_de_usuario['cidade])

obs: no seu exemplo esta como row já no nosso esta como "dado_de_usuario", aparentemente a unica diferença

"NameError: name 'cidades_list' is not defined

 

Erro exercicio.png

Então mano é porque sua lista não se chama 'cidades_list', ela se chama 'cidades' 😄

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...