Você está aqui: Python ::: Projetos Python Completos - Códigos Fonte Completos Python ::: Projetos Python MySQL

Como criar uma Agenda de Contatos em Python + MySQL - Projeto completo com código fonte - Versão console

Quantidade de visualizações: 4489 vezes
Sobre este projeto Python

Nesta dica apresentarei um CRUD completo em Python com MySQL. Trata-se de uma aplicação console usando um menu de opções que mostra, de forma simples e com código comentado, como você pode fazer uma conexão Python + MySQL e disparar comandos SQL INSERT, SELECT, DELETE e UPDATE.

Este código serve como o ponto de início para qualquer estudante ou programador Python que queira entender melhor o processo de manipular bases de dados MySQL a partir da linguagem Python. Esta técnica é muito preciosa, tanto para programadores front-end quanto back-end.

Vamos começar com a estrutura da tabela MySQL usada no projeto.

A tabela MySQL contatos

Neste projeto eu criei uma base de dados chamada "agenda" e uma tabela chamada "contatos". Veja o comando DDL para a sua criação:

CREATE TABLE contatos(
  id int(11) NOT NULL AUTO_INCREMENT,
  nome varchar(200) NOT NULL,
  email varchar(100) NOT NULL,
  PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;


Depois de criada a base de dados, crie esta tabela e se certifique de que tudo está funcionando 100%.

A conexão Python + MySQL

Para efetuar a conexão entre a linguagem Python e o banco de dados MySQL nós usaremos o MySQL Connector Python. Veja os imports a seguir:

# vamos importar o módulo MySQL Connector Python
import mysql.connector
# vamos importar a classe Error
from mysql.connector import Error


Veja agora o código que efetua a conexão com o banco de dados, informando o servidor, a base de dados, o nome de usuário e a senha:

# vamos obter a conexão com o banco de dados MySQL
try:
  conexao = mysql.connector.connect(host='localhost',
  database='agenda', user='root', password='osmar1234')
except Error as e:
  print("Houve um erro ao tentar efetuar a conexão MySQL:", e) 


Vamos ver a tela principal da aplicação Agenda de Contatos

Veja como o menu de opções está estruturado:



Note que cada item do menu chama uma operação no banco de dados.

Vamos ver um pouco do código Python?

Veja um trecho de código no qual mostramos como inserir um novo registro na tabela contatos:

# esta função é usada para cadastrar um novo contato na agenda
def cadastrar_novo_contato(conexao):
  # vamos ler os dados do novo contato
  nome = input("\nNome: ")
  email = input("E-mail: ")
  
  # cria o cursor para a transação
  cursor =  conexao.cursor()
  # define o comando SQL
  sql = "INSERT INTO contatos(id, nome, email) VALUES (NULL, %s, %s)"
  valores = (nome, email)
  # executa o comando SQL
  cursor.execute(sql, valores)
  # faz o commit da transação
  conexao.commit()
  # fecha o cursor
  cursor.close()
  # e exibe uma mensagem de sucesso
  print("\nO novo contato foi gravado com sucesso.")


Como posso obter este código fonte?

Os links para você baixar este projeto da Agenda de Contatos usando Python + MySQL está logo abaixo:

1) AGENDACONTPYCONS - Agenda de Contatos em Python com Banco de Dados MySQL - Faça o Download.

Não se esqueça: Uma boa forma de estudar o código é fazendo pequenas alterações e rodando para ver os resultados. Outra opção é começar um projeto Python do zero e ir adicionando trechos do código fonte para melhor entendimento de suas partes.

Link para compartilhar na Internet ou com seus amigos:

Python ::: Dicas & Truques ::: Data e Hora

Como retornar o nome do mês de uma data no formato longo em Python usando o marcador %B do método strftime()

Quantidade de visualizações: 7919 vezes
Como retornar o nome do mês de uma data no formato longo em Python usando o marcador %B do método strftime()

Nesta dica mostrarei como podemos usar a função strftime() do objeto datetime para retornar o nome do mês de uma data no formato longo, por exemplo, "dezembro". Note que, para isso, nós vamos usar o código de formatação %B.

Para deixar o exemplo ainda mais interessante eu usei o método setlocale() da classe locale para exibir o nome do mês em Português, ou seja, de acordo com as configurações regionais. Veja o código Python completo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

from datetime import datetime
import locale

def main():
  # Configurações do usuário
  locale.setlocale(locale.LC_ALL, "")

  # Obtém um datatime da data e hora atual
  hoje = datetime.today()

  # Exibe o nome do mês no formato longo
  print(hoje.strftime("O mês é: %B"))

if __name__== "__main__":
  main()

Ao executar este código Python nós teremos o seguinte resultado:

O mês é: fevereiro


Python ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle

Exercício Resolvido de Python - Um comerciante comprou um produto e quer vendê-lo com um lucro de 45% se o valor da compra for menor

Quantidade de visualizações: 1766 vezes
Algoritmos Resolvidos de Python - Um comerciante comprou um produto e quer vendê-lo com um lucro de 45% se o valor da compra for menor

Pergunta/Tarefa:

Um comerciante comprou um produto e quer vendê-lo com um lucro de 45% se o valor da compra for menor que R$ 20,00; caso contrário, o lucro será de 30%. Elabore um algoritmo que leia o valor do produto e imprima o valor de venda para o produto.

Sua saída deverá ser parecida com:

Informe o valor do produto: 85
O valor de venda é: 110.5
Resposta/Solução:

Veja a resolução comentada deste exercício usando Python:

Código para principal.py:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# método principal
def main():
  # valor ler o valor do produto
  valor = float(input("Informe o valor do produto: "))
  
  # vamos calcular o valor de venda
  if valor < 20:
    valor_venda = valor + (valor * (45.0 / 100)) 
  else:
    valor_venda = valor + (valor * (30.0 / 100))
  
  print("O valor de venda é: {0}".format(valor_venda))
  
if __name__== "__main__":
  main()



Python ::: Topografia e Geoprocessamento ::: Passos Iniciais

Como converter graus, minutos e segundos para graus decimais em Python

Quantidade de visualizações: 1112 vezes
Em algumas situações, principalmente em cálculos da Engenharia Civil e Topografia, nós precisamos converter graus, minutos e segundos para graus decimais. É comum chamarmos graus, minutos e segundos de DMS ou GMS, enquanto os graus decimais são chamados de UTM.

Nesta dica veremos como converter 85º 42' 13.75'' para graus decimais. A fórmula que usaremos é a seguinte:

\[\text{Graus decimais} = \text{Graus} + \frac{\text{Minutos}}{60} + \frac{\text{Segundos}}{3600} \]

Veja agora o código Python completo que pede para o usuário informar os graus, os minutos e os segundos e mostra os graus decimais:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# função principal do programa
def main():
  # vamos pedir para o usuário informar os graus, minutos
  # e segundos
  graus = float(input("Informe os graus: "))
  minutos = float(input("Informe os minutos: "))
  segundos = float(input("Informe os segundos: "))
    
  # agora vamos calcular os graus decimais
  graus_decimais = graus + (minutos /  60.0) + \
    (segundos / 3600.0)
    
  # e agora mostramos o resultado
  print("Os graus decimais são: {0}".format(graus_decimais))
  
if __name__== "__main__":
  main()

Ao executar este código Python nós teremos o seguinte resultado:

Informe os graus: 85
Informe os minutos: 42
Informe os segundos: 13.75
Os graus decimais são: 85.70381944444445

Fique atento ao sinal. Se o valor em graus, minutos e segundos possuir os caracteres "W" ou "S", então o valor em graus decimais deverá levar o sinal de negativo.


Desafios, Exercícios e Algoritmos Resolvidos de Python

Veja mais Dicas e truques de Python

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 75 usuários muito felizes estudando em nosso site.