Jump to content
Fórum Script Brasil
  • 0

Exercicio sobre Fluxo condicional e repetições


Adriléia Moreira
 Share

Question

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 to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 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 to comment
Share on other 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 to comment
Share on other 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 to comment
Share on other 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 to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.2k
    • Total Posts
      647.5k
×
×
  • Create New...