Pequeno Projeto Estático em Python

Criar um projeto de cadastro de clientes e pedidos é um ótimo exercício para praticar a programação orientada a objetos em Python. Aqui está um exemplo de como você pode estruturar o projeto:

  1. Criar uma classe Cliente para representar um cliente

class Cliente:
def __init__(self, nome, email, telefone):
self.nome = nome
self.email = email
self.telefone = telefone
  1. Criar uma classe Pedido para representar um pedido
class Pedido:
def __init__(self, cliente, descricao, valor):
self.cliente = cliente
self.descricao = descricao
self.valor = valor
  1. Criar uma classe Cadastro para gerenciar o cadastro de clientes e pedidos
class Cadastro:
def __init__(self):
self.clientes = []
self.pedidos = []
def adicionar_cliente(self, cliente):
self.clientes.append(cliente)
def adicionar_pedido(self, pedido):
self.pedidos.append(pedido)
def editar_cliente(self, indice, cliente):
self.clientes[indice] = cliente
def editar_pedido(self, indice, pedido):
self.pedidos[indice] = pedido
def deletar_cliente(self, indice):
del self.clientes[indice]
def deletar_pedido(self, indice):
  del self.pedidos[indice]
def listar_clientes(self):
       for cliente in self.clientes:
print(f"Nome: {cliente.nome}, Email: {cliente.email},           Telefone: {cliente.telefone}")
def listar_pedidos(self):
for pedido in self.pedidos:          print(f”Cliente: {pedido.cliente.nome}, Descrição: {pedido.descricao}, Valor:                {pedido.valor})
  1. Usar a classe Cadastro para interagir com o usuário e gerenciar o cadastro
cadastro = Cadastro()
while True:
print("1 - Adicionar cliente")
print("2 - Adicionar pedido")
print("3 - Editar cliente")
print("4 - Editar pedido")
print("5 - Deletar cliente")
print("6 - Deletar pedido")
print("7 - Listar clientes")
print("8 - Listar pedidos")
print("0 - Sair")
opcao = input("Escolha uma opção: ")
if opcao == "1":
nome = input("Digite o nome do cliente: ")
email = input("Digite o email do cliente: ")
telefone = input("Digite o telefone do cliente: ")
cliente = Cliente(nome, email, telefone)
cadastro.adicionar_cliente(cliente)
print("Cliente adicionado com sucesso!")
elif opcao == "2":
nome_cliente = input("Digite o nome do cliente: ")
descricao = input("Digite a descrição do pedido: ")
valor = float(input("Digite o valor do pedido: "))
cliente = None
for c in cadastro.clientes:
if c.nome == nome_cliente:
cliente = c
    break
if cliente is not None:
pedido = Pedido(cliente, descricao, valor)
cadastro.adicionar_pedido(pedido)
print("Pedido adicionado com sucesso!")
else:
print("Cliente não encontrado!")
elif opcao == "3":
nome = input("Digite o nome do cliente a ser editado: ")
cliente = None
for c in cadastro.clientes:

if c.nome == nome:
cliente = c
break
if cliente is not None:
nome = input("Digite o novo nome do cliente: ")
email = input("Digite o novo email do cliente: ")
telefone = input("Digite o novo telefone do cliente: ")
cliente.nome = nome
cliente.email = email
cliente.telefone = telefone
cadastro.editar_cliente(cadastro.clientes.index(cliente), cliente)
print("Cliente editado com sucesso!")
else:
print("Cliente não encontrado!")
elif opcao == “4”:
nome_cliente = input(“Digite o nome do cliente do pedido a ser editado: “)
descricao = input(“Digite a nova descrição do pedido: “)
valor = float(input(“Digite o novo valor do pedido: “))
cliente = None
for c in cadastro.clientes:
if c.nome == nome_cliente:
cliente = c
break
if cliente is not None:
pedido = None
for p in cadastro.pedidos:
if p.cliente == cliente:
pedido = p
break
if pedido is not None:
pedido.descricao = descricao
pedido.valor = valor
cadastro.editar_pedido(cadastro.pedidos.index(pedido), pedido)
print(“Pedido editado com sucesso!”)
else:
print(“Pedido não encontrado!”)
else:
print(“Cliente não encontrado!”)elif opcao == “5”:
nome = input(“Digite o nome do cliente a ser deletado: “)
cliente = None
for c in cadastro.clientes:
if c.nome == nome:
cliente = c
break
if cliente is not None:
cadastro.deletar_cliente(cadastro.clientes.index(cliente))
print(“Cliente deletado com sucesso!”)
else:
print(“Cliente não encontrado!”)

elif opcao == “6”:
nome_cliente = input(“Digite o nome do cliente do pedido a ser deletado: “)
cliente = None
for c in cadastro.clientes:
if c.nome == nome_cliente:
cliente = c
break
if cliente is not None:
pedido = None
for p in cadastro.pedidos:
if p.cliente == cliente:
pedido = p
break
if pedido is not None:
cadastro.deletar_pedido(cadastro.pedidos.index(pedido))
print(“Pedido deletado com sucesso!”)
else:
print(“Pedido não encontrado!”)
else:
print(“Cliente não encontrado!”)

elif opcao == “7”:
cadastro.listar_clientes()

elif opcao == “8”:
cadastro.listar_pedidos()

elif opcao == “0”:
break

else:
print(“Opção inválida!”)

Esse código permite que o usuário adicione clientes e pedidos, edite e delete clientes e pedidos existentes e liste todos os clientes e pedidos cadastrados. É importante lembrar que este é apenas um exemplo e pode ser adaptado para atender às necessidades específicas do seu projeto.
Saia na frente da concorrência faça um curso na área de programação clique e escolha seu curso: linktr.ee/cursosprogramacao.com

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *