Controle de gastos pessoais - Platzi
Introdução ao Python 3
Conhecendo a linguagem de programação Python
Configurando o ambiente de desenvolvimento no Windows, Linux e Mac OS
Conhecendo o interpretador do Python
Definindo variáveis e conhecendo os tipos de dados bool, int e float
Entrada de dados via console
Operadores aritméticos, operadores de atribuição e conversão de int para float e vice-versa
Operadores de comparação, lógicos, identidade e bit a bit
Recebendo dados via console
Usando o tipo de dado string
Exercícios: usando o tipo de dado string
Trabalhando com arquivos .py
Estrutura condicional e repetição
Usando condicional if, elif e else
Exercícios: Usando condicional if, elif e else
Conhecendo a estrutura de repetição for
Usando a estrutura de repetição while
Organizando o código com funções
Organizando seu código com funções
Passando parâmetros para funções
Obtendo o retorno das funções
Exercícios: Obtendo o retorno das funções
Usando módulos com funções já prontas
Exercícios: Lista
Projeto do Curso Básico de Python
Rafael Guimarães Sakurai
Parabéns por ter feito o curso básico de Python! Este projeto é uma forma de você praticar tudo que aprendeu ao longo do curso e para isso criei um passo a passo que servirá como guia para implementar este projeto.
A ideia deste projeto é ajudar a controlar os gastos pessoais, com base no histórico de gastos de um mês, vamos realizar alguns cálculos para saber com base no salário, quanto gastamos com despesas fixas, estudo, investimento ou outros gastos, e se no final do mês ainda sobra algum dinheiro.
Vamos começar criando um arquivo Python para guardar o nosso código, pode chamar esse arquivo de projeto.py. O trecho de código a seguir servirá como base para você realizar o projeto, copie e cole no seu arquivo projeto.py.
def obterDados():
return '''01/06/2020;Saldo;192.60;SALDO
02/06/2020;Luz;-218.25;ESSENCIAL
04/06/2020;Salário;3050.00;SALARIO
05/06/2020;Mercado;-826.42;ESSENCIAL
08/06/2020;Stream de vídeos;-32.90;OUTROS
10/06/2020;�gua;-155.07;ESSENCIAL
10/06/2020;Gas;-94.38;ESSENCIAL
10/06/2020;Condominio;-382.94;ESSENCIAL
11/06/2020;Presente;-64.90;OUTROS
12/06/2020;Jantar;-128.00;OUTROS
19/06/2020;Livro;-83.40;ESTUDO
19/06/2020;Sacolão;-35.56;ESSENCIAL
21/06/2020;Academia;-89.90;ESSENCIAL
21/06/2020;Gasolina;-236.85;ESSENCIAL
25/06/2020;Celular;-99.90;ESSENCIAL
25/06/2020;Platzi;-34.00;ESTUDO
26/06/2020;Jantar;-46.40;OUTROS
30/06/2020;Investimento;-400.00;INVESTIMENTO'''
dados = obterDados()
A função obterDados() servirá para simular um extrato bancário, aqui contendo apenas dados de entrada e saída para representar um mês como exemplo. Os valores positivos representam o saldo inicial da conta no começo do extrato e o valor do salário recebido, e os valores negativos representam os gastos realizados que foram previamente categorizados em: ESSENCIAL, ESTUDO, INVESTIMENTO ou OUTROS.
Depois que você copiou este código para o seu projeto.py, execute ele e veja se ele imprime o extrato no console, de uma olhada nos dados para entender como eles estão organizados.
Em um extrato é importante mostrar o saldo final, implemente uma função que receba via parâmetro a string que representa os dados, calcule e retorne o valor do saldo. Depois atualize a função main para que ela imprima o valor do saldo atual após o extrato.
Se quiser conferir, o valor do saldo deve ser R$313.73.
Sugestão: coloque comentários no código para que você possa lembrar da lógica que você utilizou.
Vamos organizar os valores em quatro categorias: ESSENCIAL, ESTUDO, INVESTIMENTO e OUTROS. Crie uma função que receba via parâmetro a string que representa os dados, some os valores referentes a cada categoria e por fim retorne uma estrutura de dados contendo cada uma das categorias e seu respectivo valor.
Depois atualize a função main para que ela imprima cada uma das categorias e valor gasto.
Se quiser conferir, o relatório de despesas por categoria deve ter esses valores:
ESSENCIAL: R$2139.27
ESTUDOS: R$117.40
INVESTIMENTO: R$400.00
OUTROS: R$272.20
Sugestão: lembre-se de colocar os comentários no código e se precisar coloque alguns prints a mais para você saber se está fazendo os cálculos corretamente, depois que você conseguir obter os valores corretos você pode tirar esses prints.
Agora que já sabemos quanto gastamos em cada uma das categorias, vamos adicionar um controle com meta de gastos por categoria. A ideia da meta é saber se em alguma das categorias estamos gastando mais do que queremos e se na categoria do INVESTIMENTO estamos conseguindo guardar dinheiro para usar no futuro.
Gastos essenciais vamos definir que podemos gastar até 55% do salário;
Gastos com estudos podem ser até 5% do salário;
Para investimento vamos guardar até 30% do salário para usar no futuro;
E outros gastos queremos gastar até 10% do salário com qualquer coisa.
Com isso podemos calcular com base no salário quanto podemos gastar em cada categoria e mostrar um relatório mais personalizado. Exemplo:
Com gastos essenciais podemos gastar até R$1677.50, mas gastamos R$2139.27.
Com estudos podemos gastar até R$152.50 e gastamos apenas R$117.40, então ainda temos R$34.80.
Podemos guardar para investimento até R$915.00, mas investimos apenas R$400.00, se sobrar mais um pouco de dinheiro esse mês tente guardar mais.
Podemos gastar com outros gastos R$305.00, mas gastamos apenas R$272.20, isso é bom.
Pare a leitura do texto por aqui e tente implementar esse passo do projeto, e se você estiver com dificuldade dê uma olhada na sugestão a seguir.
Sugestão: comece implementando uma função para obter apenas o valor que foi recebido de salário; depois crie uma nova função que use a função para obter o salário e a função para obter os gastos por categoria, e com base nas metas de cada categoria, calcule o valor que pode ser gasto com base no salário; imprima uma frase personalizada para cada categoria, você pode criar uma frase quando você gastou menos do que o disponível, quando você gastou exatamente o valor disponível ou uma para quando você gastou mais do que deveria; e por último atualize a função main para que ela chame esta função que imprime o relatório.
Espero que você tenha conseguido implementar esses quatro passos, o desafio do projeto era esse e agora tenho uma última sugestão: altere os dados do extrato para refletir a sua realidade, atualize também as metas de acordo com os seus interesses e aperfeiçoe este código para realizar outras operações que você queira.