Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- lista = [['arroz-', '4.00'], ['feijão-', '2.00'], ['catarro1-', '50.00'], ['catarro2-', '1.00'], ['catarro3-', '8.00'], ['catarro4-', '6000.00'], ['catarro5-', '0.1']]
- # criei uma matriz que é uma lista dentro da outra, para poder separar cada produto um do outro, para eles terem posições unicas(individuais)
- precos = [] # <= criei essa lista para poder analisar os preços com mais facilidade,ao inves de usar: por exemplo quero acessar o preço do produto de posição 0
- # da lista, então ao inves de fazer lista[0][1], eu faço precos[0] pois precos no loop abaixo,recebe os precos de cada produto
- for c in lista: # <= loop pra pegar todos os precos de cada produto da lista
- precos.append(float(c[1]))# <= transformei em float porque 'c[1]' estava do tipo string(obs: c[1] = preço do produto)
- print(precos) # printei precos só pra ver se estava tudo certo haha
- for cont in range(0, len(precos)):# isso aqui pra cada elemento da lista 'precos' ele vai executar o loop que esta dentro desse 'for' pai.
- for indice, c in enumerate(precos):
- # aqui eu analiso cada elemento de 'precos', esse enumerate é uma palavra reservada pra pegar o indice e o conteudo
- # de cada elemento da lista 'precos', o primeiro argumento 'indice' poderia ser qualquer variavel,qualquer nome,
- # mas coloquei como 'indice',pois realmente ele pega o indice daquele determinado item da lista e o 'c' indica o conteudo.
- if indice + 1 < len(precos):
- # isso aqui é para não dar erro index out of range, que indica que não existe o indice indicado,pois embaixo estou testando
- # o indice + 1 ou seja se o indice do elemento for maior doque o tamanho do array ele não faça o resto do codigo,pois
- # gerara um erro se tentar analisar um elemento que não existe dentro da lista
- if c > precos[indice + 1]:
- # aqui verifico se o elemento atual 'c', é maior doque o seu elemento posterior 'precos[indice + 1]', coloquei indice + 1
- # pois do indice do elemento atual,quero analisar o seu elemento posterior,então aumentei em 1 o indice para pegar o elemento posterior pelo indice
- antigo = c # <= antigo vai ser = conteudo atual que é o c
- novo = precos[indice + 1] # <= novo vai ser igual ao elemento posterior, que é o: precos[indice + 1], como eu havia dito no comentario aqui encima
- precos[indice] = novo # <= e ae adiciono ao elemento atual o valor do elemento posterior
- precos[indice + 1] = antigo# <= aqui tambem, o elemento posterior vai ter o valor do elemento atual.
- print(precos)
- # se eu nao usasse o for pai(for pai é o segundo loop 'for' que usei no codigo,os preços ficariam embaralhados
- # eu botei o for 'pai' pra executar até acabar os elementos da lista,para nenhum ficar na ordem incorreta se quiser testar,
- # retire o for pai do codigo e verá o resultado incorreto
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement