Sistema de gerenciamento de estoque desenvolvido em Python puro, sem dependências externas. Permite cadastrar produtos, controlar entradas e saídas, realizar buscas, gerar relatórios e acompanhar indicadores importantes como estoque baixo, produtos zerados e valor total armazenado.
O projeto foi construído do zero como exercício prático dos fundamentos da linguagem — funções, estruturas de dados, validação de entrada e tratamento de erros — aplicados a um problema real de gestão.
- ✅ Cadastro de produtos com validação de dados de entrada
- ✅ Listagem de todos os produtos cadastrados
- ✅ Busca de produtos por nome ou código
- ✅ Remoção de produtos do sistema
- ✅ Movimentação de estoque (entrada e saída) com controle de quantidade
- ✅ Relatórios com:
- Produtos com estoque baixo
- Produtos sem estoque
- Valor total armazenado
- ✅ Tratamento de erros para evitar falhas com entradas inválidas
| Categoria | Detalhes |
|---|---|
| Linguagem | Python 3 |
| Estruturas de dados | Listas, dicionários e tuplas |
| Organização | Código modularizado em main.py e estoque.py |
| Boas práticas | Validação de dados, tratamento de exceções, funções reutilizáveis |
| Persistência (atual) | Em memória (sem banco de dados) |
sistema-estoque-python/
├── main.py # Ponto de entrada, menu e interação com o usuário
├── estoque.py # Lógica de negócio: cadastro, movimentação e relatórios
└── README.md
Pré-requisito: ter o Python 3 instalado.
# Clone o repositório
git clone https://github.com/matheuscampagnoldev/sistema-estoque-python.git
# Acesse a pasta do projeto
cd sistema-estoque-python
# Execute o sistema
python main.pyNão há dependências externas — o projeto roda apenas com a biblioteca padrão do Python.
O projeto está em evolução contínua. Próximas versões planejadas:
- v2.0 — Integração com banco de dados MySQL, mantendo o histórico de produtos e movimentações entre execuções
- v3.0 — Desenvolvimento de uma interface gráfica (ou web)
Este projeto foi desenvolvido como parte da minha jornada de estudos em Python, com foco em consolidar fundamentos antes de avançar para tópicos como orientação a objetos, persistência de dados e bancos de dados. A ideia foi priorizar a construção de algo funcional e completo usando apenas os conceitos essenciais da linguagem.
Matheus Zuim Campagnol
Estudante de Engenharia de Software | Foco em Python
⭐ Se este projeto te ajudou de alguma forma ou você gostou da ideia, deixe uma estrela no repositório!