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: 4285 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 ::: Desafios e Lista de Exercícios Resolvidos ::: Ordenação e Pesquisa (Busca)

Exercícios Resolvidos de Python - Como usar a Ordenação da Bolha em Python para ordenar os valores de um vetor em ordem crescente ou decrescente

Quantidade de visualizações: 449 vezes
Pergunta/Tarefa:

A Ordenação da Bolha, ou ordenação por flutuação (literalmente "por bolha"), também chamada de Bubble Sort, é um algoritmo de ordenação dos mais simples. A ideia é percorrer o array diversas vezes, a cada passagem fazendo flutuar para o topo o maior elemento da sequência. Essa movimentação lembra a forma como as bolhas em um tanque de água procuram seu próprio nível, e disso vem o nome do algoritmo.

No melhor caso, o algoritmo executa n operações relevantes, onde n representa o número de elementos do vetor. No pior caso, são feitas n2 operações. A complexidade desse algoritmo é de ordem quadrática. Por isso, ele não é recomendado para programas que precisem de velocidade e operem com quantidade elevada de dados.

Escreva um programa Python que declara, constrói um vetor de 10 inteiros e peça para o usuário informar os valores de seus elementos. Em seguida use a ordenação da bolha para ordenar os elementos em ordem crescente.

Sua saída deverá ser parecida com:

Informe o valor para o índice 0: 84
Informe o valor para o índice 1: 23
Informe o valor para o índice 2: 9
Informe o valor para o índice 3: 5
Informe o valor para o índice 4: 11
Informe o valor para o índice 5: 3
Informe o valor para o índice 6: 50
Informe o valor para o índice 7: 7
Informe o valor para o índice 8: 2
Informe o valor para o índice 9: 73

O array informado foi:

84   23   9   5   11   3   50   7   2   73   

O array ordenado é:

2   3   5   7   9   11   23   50   73   84
Resposta/Solução:

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

----------------------------------------------------------------------
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 declarar e construir um vetor de 10 elementos
  valores = [0 for x in range(10)]
  	  
  # vamos pedir que o usuário informe os valores
  for i in range(0, len(valores)):
    valores[i] = int(input("Informe o valor para o índice {0}: ".format(i)))
    
  # vamos mostrar o vetor informado
  print("\nO array informado foi:\n\n")
  for i in range(0, len(valores)):
    print(valores[i], end="   ")
    
  # vamos ordenar os elementos do vetor usando a ordenação da bolha
  # laço externo de trás para frente
  for i in range(len(valores) - 1, 0, -1):
    for j in range(0, i): # laço interno vai no fluxo normal
      if valores[j] > valores[j + 1]: # temos que trocá-los de lugar 
        temp = valores[j]
        valores[j] = valores[j + 1]
        valores[j + 1] = temp
    
  # vamos exibir o vetor já ordenado
  print("\n\nO array ordenado é:\n\n")
  for i in range(0, len(valores)):
    print(valores[i], end="   ")
  
  print("\n")

if __name__== "__main__":
  main()



Python ::: Matplotlib Python Library (Biblioteca Python Matplotlib) ::: Passos Iniciais

Plotagem e visualização de dados em Python - Como instalar a biblioteca Matplotlib e testar seu funcionamento

Quantidade de visualizações: 2990 vezes
A biblioteca Matplotlib, escrita originalmente por John D. Hunter em 2003, é um dos pacotes Python mais populares para a plotagem e visualização de dados.

O acesso às funcionalidades da Matplotlib é feito por meio da interface Pylab, que lembra muito o MATLAB, a linguagem de programação proprietária desenvolvida pela MathWorks. Os usuários acostumados com essa ferramenta chegam a afirmar que a biblioteca Matplotlib, combinada com a biblioteca NumPy, pode ser considerada o equivalente open source do MATLAB.

Já tenho o Matplotlib disponível na minha instalação do Python?

Antes de iniciar qualquer projeto que envolva a biblioteca Matplotlib, é importante verificar se a mesma está disponível em sua instalação do Python. Isso pode ser de várias formas. Mostrarei como obter a lista de módulos usando a opção "list" do pip. Basta abrir uma janela de terminal e disparar o seguinte comando:

C:\Users\Osmar>pip list

Você terá um resultado parecido com:

C:\Users\Osmar>pip list
Package           Version
----------------- -------
astroid           2.4.2
colorama          0.4.4
isort             5.6.4
joblib            1.0.0
lazy-object-proxy 1.4.3
mccabe            0.6.1
numpy             1.19.4
pandas            1.1.5
Pillow            8.0.1
pip               20.3.3
pylint            2.6.0
python-dateutil   2.8.1
pytz              2020.4
scikit-learn      0.24.0
scipy             1.5.4
setuptools        49.2.1
six               1.15.0
threadpoolctl     2.1.0
toml              0.10.2
wrapt             1.12.1
wxPython          4.1.1
Uma outra forma é tentando importar o módulo matplotlib. Veja:

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

# importamos a bibliteca Matplotlib
import matplotlib as mp
 
def main():
  # vamos mostrar a versão da biblioteca Matplotlib
  versao = mp.__version__
 
  print("A versão do Matplotlib é:", versao)
 
if __name__== "__main__":
  main()

Se você tiver o Matplotlib instalado, o resultado desse código será algo como:

A versão do Matplotlib é: 3.4.1

Se você não tiver a biblioteca Matplotlib instalada, a seguinte mensagem de erro será exibida:

Exception has occurred: ModuleNotFoundError
File "c:\estudos_python\estudos.py", line 3, in <module>
  import matplotlib as mp
ModuleNotFoundError: No module named 'matplotlib'


Não tenho o Matplotlib ainda. O que faço?

Abra uma janela de terminal e dispare o comando abaixo:

C:\Users\Osmar>pip install matplotlib

Depois de alguns segundos você verá o seguinte resultado:

Collecting matplotlib
Downloading matplotlib-3.4.1-cp39-cp39-win_amd64.whl (7.1 MB)
|-| 7.1 MB 3.3 MB/s
Requirement already satisfied: pillow>=6.2.0 in c:\python_3_9_1\lib\site-packages (from matplotlib) (8.0.1)
Requirement already satisfied: python-dateutil>=2.7 in c:\python_3_9_1\lib\site-packages (from matplotlib) (2.8.1)
Requirement already satisfied: numpy>=1.16 in c:\python_3_9_1\lib\site-packages (from matplotlib) (1.19.4)
Collecting cycler>=0.10
Downloading cycler-0.10.0-py2.py3-none-any.whl (6.5 kB)
Requirement already satisfied: six in c:\users\osmar\appdata\roaming\python\python39\site-packages (from cycler>=0.10->matplotlib) (1.15.0)
Collecting kiwisolver>=1.0.1
Downloading kiwisolver-1.3.1-cp39-cp39-win_amd64.whl (51 kB)
|-| 51 kB 3.8 MB/s
Collecting pyparsing>=2.2.1
Downloading pyparsing-2.4.7-py2.py3-none-any.whl (67 kB)
|-| 67 kB 1.7 MB/s
Installing collected packages: pyparsing, kiwisolver, cycler, matplotlib
Successfully installed cycler-0.10.0 kiwisolver-1.3.1 matplotlib-3.4.1 pyparsing-2.4.7

Obteve resultado parecido? Pronto! Você já pode começar a usar a biblioteca Matplotlib em seus aplicações Python.


Python ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como converter graus em radianos em Python - Trigonometria em Python

Quantidade de visualizações: 2948 vezes
Quando estamos trabalhando com trigonometria na linguagem Python, é importante ficarmos atentos ao fato de que todos os métodos e funções trigonométricas em Python recebem seus argumentos em radianos, em vez de graus.

Nesta dica veremos como converter graus em radianos (sem a chatice de ficar relembrando regra de três). Veja a fórmula abaixo:

\[Radianos = Graus \times \frac{\pi}{180}\]

Agora veja como esta fórmula pode ser escrita em código Python:

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

import math

# função principal do programa
def main():
  # valor em graus
  graus = 30
  # obtém o valor em radianos
  radianos = graus * (math.pi / 180)
  # mostra o resultado
  print(graus, "graus convertidos para",
    "radianos é", radianos)
 
if __name__== "__main__":
  main()

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

30 graus convertidos para radianos é 0.5235987755982988

Por fim, saiba que a linguagem Python nos oferece o método math.radians() que nos permite converter ângulos em graus para radianos. Meu propósito nesta dica foi mostrar a você como o cálculo de conversão pode ser escrito em Python. Em outras dicas dessa seção abordaremos o método math.radians().


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: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



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