fala impressionador no vídeo de hoje eu quero ensinar para vocês sobre funções no Python funções é uma estrutura base do Python muito importante a gente já usou funções ao longo dessa playlist de curso básico de Python Que por sinal se você tiver acompanhando e caiu aqui de paraquedas você pode ver a Playlist inteira se você quiser no link aqui da descrição mas se não pode assistir essa aula com a gente sem problema nenhum e as funções a gente costumou a usar muito as funções já prontas do Python a gente vai agora criar as nossas próprias funções e entender a importância das funções Vamos partir pro nosso conteúdo da aula de hoje bom galera se você gostou da ideia do vídeo e dessa playlist como um todo deixe seu like e se inscreve no canal para continuar acompanhando a gente e aprendendo eu vou deixar lembra que todos os arquivos eu tô deixando eles aqui na descrição os arquivos da aula o gabarito é os arquivos que a gente vai usar para fazer o nosso projeto final tudo vai est aqui na descrição disponível para vocês Beleza então vamos lá vamos partir efetivamente pro nosso conteúdo da aula O que são funções no Python e para que que elas servem e como que a gente vai usar basicamente as funções do Python elas servem para você conseguir organizar o seu código de uma maneira mais eficiente e para você conseguir fazer o mesmo procedimento mais de uma vez sem você precisar repetir um código a você vai falar Lira Mas a gente não aprendeu o for para isso para eu poder usar aquele comando várias vezes sim mas repare o seguinte imagina que você quer tratar fazer o tratamento de uma calcular um imposto por exemplo sobre um produto quando esse esse produto entrou na sua loja no cálculo do de entrada do produto da loja beleza ele entrou no na loja você fez o cálculo do Imposto no produto mas aí Digamos que você tem que fazer o mesmo cálculo do do Imposto no produto Quando você vai vender esse produto ou então quando você vai manipular esse produto Ou seja você tá tentando fazer um procedimento que vai ser aplicado para vários produtos mas em momentos diferentes em locais diferentes do seu código você tá querendo repetir o mesmo procedimento que que normalmente a gente vai acabar fazendo a gente vai criar uma função para poder usar esse essa função sempre que a gente precisar e mais até importante do que esse uso é você garantir que as coisas do seu código os pedaços do seu código eles estão separados de uma forma organizada e de uma forma fácil de você manter até então os nossos códigos Eles foram relativamente simples relativamente pequenos à medida que você for avançando muito no seu código pensa que o seu código ele vai ser uma lista de ifs for ifs for lista tupla dicionário não sei o que não sei várias coisas acontecendo ao mesmo tempo no seu código quando você cria uma função são você organiza um pouco mais você separa Olha esse pedaço do meu código faz isso esse pedaço do meu código faz aquilo outro esse pedaço do meu código faz aquilo outro e você simplesmente usa as funções no seu código a gente vai ver isso funcionando na prática aqui agora pra gente então vamos lá vamos entender Digamos que a gente tivesse uma lista de preços de produtos que foi o exemplo que eu tava dando para vocês e eu tenho aqui um produto que custa 1. 00 um produto que custa 1. 000 um produto que custa 800 e um produto que custa 3.
000 Beleza então esse aqui são os produtos totais que a gente tem E aí basicamente o que eu quero conseguir fazer aqui é que eu quero calcular o imposto sobre esses produtos aqui e o imposto sobre esses produtos ele vai ter uma regra super complexa afinal de contas estamos no Brasil a gente sabe que calcular imposto nos produtos ele vai é bem complexo Então a gente vai ter três alíquotas de imposto tá alíquota um do imposto que é digamos sei lá um imposto de renda digamos assim um imposto de renda ela é uma alíquota de 20% a alíquota dois ela é uma alíquota de 15% é o sei lá Digamos que esse cara aqui é o ISS ou ICMS beleza e alíquota 3 que é o csll é o csll que é um outro imposto também ele é um de 5% Beleza então tem essas três alíquotas de imposto para aplicar sobre os preços do nosso produto Beleza então repar o seguinte o imposto total que a gente vai calcular ele vai ser a alíquota um alíquota ele vai ser o o 02 mais o 015 mais o 0,05 calculado sobre esses produtos só que eu posso querer calcular cada um desses impostos individualmente para poder visualizar eles então eu vou ter por exemplo o imposto do ir vai ser o 0. 2 vezes o preço do produto e aí Digamos que eu tô fazendo isso para um preço de um produto preço do produto é por exemplo 1500 né então vamos calcular todos esses impostos aqui para essa Nossa lista de preços aqui tá então eu vou começar com o primeiro depois eu vou aplicar um for para ele calcular para todos então o preço do primeiro produto é 1500 o ir dele vai ser isso depois eu vou pegar o imposto do ISS dele vai ser 0. 15 vezes o preço do produto e depois eu vou ter o imposto que é do csll dele que vai ser o meu 0.
05 xes o preço do produto e aí eu vou ter o imposto total que é o imposto do ir mais o imposto do ISS mais o imposto do CSL Beleza então esse aqui vai ser o nosso total de imposto E aí eu calculei agora o total de imposto eu posso então chegar e fazer assim print imposto Total então vamos fazer um testinho bonito aqui vamos fazer assim ó imposto Total sobre o produto de tantos reais botar aqui um R cifrão e botar aqui o preço do produto beleza como a gente vai colocar uma variável dentro de um texto a gente bota um Ezinho aqui na frente a gente aprendeu isso nas outras aulas lá do nosso curso básico então o imposto Total sobre o produto de preço tal dois pontos é o valor do Imposto total que tá aqui tá R reci Frão o valor do Imposto total que tá aqui beleza posso fechar o meu texto aqui e vamos entar isso aqui ó se eu rodar isso aqui sobre 1500 a gente tá vendo o imposto Total sobre produto de r$ 1500 é r$ 600 Beleza se eu tivesse Agora usando um produto de r$ 800 o imposto Total vai ser o imposto total de 320 então a gente fez todos esses Passos aqui para um preço definido agora eu quero aplicar isso para todos os preços da nossa lista então o que que eu vou fazer vou colocar dentro de um for para cada preço dentro da nossa lista de preços lembrando a variável preço vai ser cada um desses elementos aqui então eu vou colocar isso aqui tudo dentro do meu pum dentro do meu for beleza e aí eu vou rodar esse código aqui agora então tá lá o imposto Total sobre produto de 800 é obviamente o preço aqui não é 800 né a gente agora o preço a gente pega do nosso for E aí quando eu rodar aqui agora a gente vai ver ó imposto Total sobre produto de R 1. 500 é R 500 o imposto Total sobre produto de R 1. 000 é R 400 o imposto Total sobre produto de R 800 é 3 320 o imposto Total sobre produto de 3.
000 é 12$ então a gente calculou todos os impostos aqui dentro desse for beleza e aí eu viro para vocês e falo assim beleza agora o que acontece é o seguinte a alíquota de Imposto de Renda ela vai mudar um pouco a alíquota de Imposto de Renda ela vai ser 20% se o preço do produto for até r$ 2000 acima disso a alíquota é de 30% surgiu essa regra e é e tem vários impostos no Brasil que são assim inclusive Imposto de Renda ele tem uma alíquota de tanto até tal valor depois de tal valor vira tanto e tal então isso é o cenário real mesmo tá os números aqui obviamente não são reais mas o cenário de você ter alíquotas personalizadas ele é assim mesmo aí você Puts eu tenho que encontrar imagina esse código aqui ele é um código relativamente pequeno eu tenho que encontrar o pedaço do meu código onde eu tô calculando a alíquota do Imposto de Renda porque lá eu vou ter que aplicar uma lógica diferente tá Ah legal então aqui ó aqui eu tô calculando Imposto de Renda então aqui eu vou ter que fazer o seguinte se o preço do produto é maior do que 2000 então o imposto de é não é menor ou igual a 2000 então o imposto de renda realmente é 20% do preço caso contrário caso contrário o imposto de renda o imposto do ir ele é 0. 3 vezes o preço do produto então repara o seguinte eu tô querendo aplicar uma lógica toda e repara essa lógica do Imposto aqui ela tem cinco linhas seis linhas mas ela poderia ter muito mais linhas eu tô querendo aplicar uma lógica toda de cálculo de imposto sobre uma lista de produtos sendo que aqui você tem meio que duas coisas acontecendo você tem o cálculo de a lógica do cálculo de imposto acontecendo aqui que ela pode ser simples pode ser complexa e que se eu tiver agora por exemplo uma nova lista uma nova lista de preço de produtos né de produtos com novos preços 3. 000 5000 6000 7000 e eu quero aplicar essa nova lista aqui dentro eu vou ter que fazer um for igual é esse tá vendo aqui vou ter que fazer um for igualzinho a isso for preço em Nova lista de produtos eu vou ter que copiar todo esse if toda essa coisa que vou ter que copiar isso tudo tá vendo toda a lógica do Imposto aqui e eu vou ter que aplicar a mesma lógica do Imposto em mais de um lugar então são os dois problemas que eu comentei com vocês Se eu precisar aplicar isso daqui em mais de um lugar eu vou ter que repetir não uma linha de código porque não tem problema você repetir uma linha de código que calcula o imposto você vai ter que repetir toda a lógica de cálculo do Imposto e se em algum momento Essa lógica do cálculo do Imposto mudar ou você tiver que adaptar ela você simplesmente tiver que olhar ela porque ela tá com bug ali dentro você vai ter que procurar no seu código Aonde que tá a lógica de cálculo do Imposto e vai ter que editar em todos os lugares em que você usou a lógica do cálculo de imposto então o que que é mais inteligente você fazer repar o seguinte Olha só para esse for Inicial Aqui tem duas coisas acontecendo tem aqui a lógica do cálculo do Imposto Total tem a aplicação do Imposto total na minha lista são duas coisas que estão acontecendo a lógica do cálculo do Imposto é uma coisa e a aplicação do Imposto total é outra coisa que que você pode fazer eu vou fazer o seguinte Olha só eu vou criar uma função que ela calcula o imposto Total eu vou criar uma função para você criar uma função você usa a palavrinha def a palavrinha Def ela significa definir né define em inglês né então é de definir eu quero definir agora essa palavra aqui esse termo calculo imposto Total esse termo calculo imposto Total o que que eu lhe precisa receber de informação para ele conseguir calcular o imposto Total Ele precisa saber o preço do produto Então você coloca dentro do parêntese todas as coisas que você quer que ele receba como informação para ele poder calcular o imposto Total então eu criei aqui a minha função calculo imposto total e ela recebe um preço para ela conseguir calcular o imposto total e o que que ela faz ela faz esse if todo aqui pra gente ela faz isso aqui ó ela faz ela verifica se o preço for menor do que 2.