Conteúdo do Curso
Introdução ao Python
Introdução ao Python
Funções Integradas
E se lhe pedissem para encontrar o maior número de uma lista? Com o conhecimento adquirido, você poderia escrever um loop para verificar se o elemento atual é maior/menor que o maior anterior e atualizá-lo; se não, continuaria. Mas para listas longas, este método pode consumir muito tempo. Felizmente, existem funções incorporadas que podem tornar esta tarefa mais eficiente. Aqui estão algumas:
min(x, y, ...)
- Retorna o menor valor entrex, y, ...
;max(x, y, ...)
- Retorna o maior valor entrex, y, ...
;abs(x)
- Fornece o valor absoluto dex
;round(x, n)
- Arredonda o númerox
comn
casas decimais;pow(x, n)
- Elevax
à potência den
;
Por exemplo, suponha que queremos calcular a densidade populacional para um conjunto de países na lista countries
. Para fazer isso, dividiríamos a população pela área. Veja como isso é feito:
# Initial data countries = [["USA", 9629091, 331002651], ["Canada", 9984670, 37742154], ["Germany", 357114, 83783942], ["Brazil", 8515767, 212559417], ["India", 3166391, 1380004385]] # Iterating over external list for i in range(len(countries)): if type(countries[i]) is list: # Computing population density for a country pop_dens = countries[i][2]/countries[i][1] print(countries[i][0], pop_dens, 'people per km²')
No exemplo acima, nossa lista tinha 5 sub-listas aninhadas. Percorremos a lista principal e verificamos se cada item era uma lista. Se fosse, dividimos o terceiro item (população) pelo segundo (área).
No entanto, os resultados não eram muito fáceis de ler, pois tinham mais de 10 casas decimais. Para torná-los mais legíveis, podemos usar a função round()
para reduzi-los a apenas 2 casas decimais. Lembre-se, esta função leva dois argumentos: o primeiro é o número que você deseja arredondar, e o segundo especifica quantas casas decimais você deseja manter.
# Initial data countries = [["USA", 9629091, 331002651], ["Canada", 9984670, 37742154], ["Germany", 357114, 83783942], ["Brazil", 8515767, 212559417], ["India", 3166391, 1380004385]] # Iterating over external list for i in range(len(countries)): if type(countries[i]) is list: # Computing population density for a country pop_dens = round(countries[i][2]/countries[i][1], 2) print(countries[i][0], pop_dens, 'people per km²')
Como você pode ver, o resultado revisado é muito mais claro e fácil de entender.
Obrigado pelo seu feedback!