Exemplos de classes Python

Exemplos de classes Python
O Python é uma linguagem de programação muito popular para desenvolver diferentes tipos de aplicativos, como aplicativos baseados em texto, aplicativos de desktop, aplicativos da Web etc. O Python suporta programação estruturada e programação orientada a objetos. Este tutorial destina -se a ensinar a usar as aulas de Python, mostrando um exemplo real de classes Python.

Algumas aulas de Python relacionadas foram usadas para desenvolver o "Aplicativo de loja de bolos" baseado em texto aqui.

Recursos do projeto

  • Exiba a lista de bolo da loja com detalhes
  • Adicione um ou mais bolos ao carrinho para compra
  • Remova um ou mais bolos do carrinho
  • Confirme a ordem
  • Cancelar o pedido
  • Feche o programa

Pré -requisitos

  • Python 3.A versão mais 8 é necessária para instalar no sistema operacional para iniciar o trabalho do projeto.
  • O conhecimento básico da programação orientada a objetos de Python exigirá a compreensão do script usado neste tutorial adequadamente.

Implementação de "Aplicativo da loja de bolos"

Três classes serão usadas para implementar as funcionalidades deste aplicativo. Estes são "comprar","ordem", e "cliente”. O "comprar”A classe é a classe pai que será usada para exibir o menu principal do aplicativo, exibir a lista de bolos da loja e verificar se o bolo selecionado pelo usuário existe na loja. O "ordem”Class é uma classe infantil que será criada herdando a partir do“comprar”Classe, e será usada para adicionar itens de bolo no carrinho, remover os itens do bolo do carrinho e exibir os itens selecionados do carrinho. O "cliente”Classe é outra classe infantil que será criada herdando a partir do“ordem”Classe, e será usada para exibir os detalhes da compra com as informações do cliente. O diagrama a seguir mostra como esse aplicativo simples funcionará:

Armazene as informações do produto

Qualquer aplicativo popular para servidor de banco de dados pode ser anexado ao aplicativo Python para armazenar dados. No entanto, nenhum servidor de banco de dados foi usado neste aplicativo para mantê -lo simples, e um arquivo de texto foi usado para armazenar os dados. Crie um arquivo de texto chamado produtos.TXT e adicione as seguintes informações do produto ao arquivo antes de iniciar a próxima parte deste aplicativo. O usuário selecionará o item do bolo neste arquivo para adicionar ao carrinho para compra. Cada campo é separado por uma vírgula aqui:

produtos.TXT

ID, nome, preço, data de criação, data de expiração
01, bolo de chocolate, 25, 01-06-22, 07-06-22
02, bolo de café, 22, 02-06-22, 10-06-22
03, Bolo de baunilha, 30, 03-06-22, 11-06-22
04, Bolo de Lama, 35, 02-06-22, 09-06-22
05, Bolo de Straberry, 40,03-06-22, 12-06-22

Importar os módulos necessários

Três módulos foram usados ​​neste aplicativo para gerar um número aleatório, ler a data atual e criar texto colorido no terminal. Crie um arquivo python nomeado comprar.py e adicione o script a seguir no início do arquivo para importar os módulos. O aleatório O módulo gerará o número do pedido. O data Módulo lerá a data atual do sistema. E a colori módulo irá gerar o texto colorido.

#Import Módulos necessários para o projeto da loja
importar aleatório
Da data de importação do DateTime
de importação colorida FG, BG, Att

Crie aula de “loja”

Depois de importar os módulos necessários, adicione o script para definir o “comprar”Class comprar.py arquivo. Esta é a classe base deste aplicativo que contém quatro variáveis ​​de classe e três métodos. O objetivo dessas variáveis ​​e os métodos são mencionados abaixo.

Variáveis

Cart_items:

É uma variável de lista e será usada para armazenar o item de bolo adicionado pelo usuário. Um novo item será anexado à lista quando um novo item de bolo for selecionado para adicionar ao carrinho, e um item existente será removido se o usuário selecionar um item de bolo para remover do carrinho. Esta variável será liberada após concluir a compra ou cancelar a compra.

Cart_amount:

É uma variável inteira e será usada para armazenar a soma do preço do produto adicionado ao carrinho. O valor dessa variável será aumentado quando um novo item de bolo for adicionado ao carrinho, e o valor dessa variável será diminuído quando um item de bolo for removido do carrinho. Esta variável será inicializada para 0 após concluir ou cancelar a compra.

cust_balance:

É uma variável inteira e será usada para armazenar o valor agregado em dinheiro pelo cliente. O valor dessa variável será aumentado quando o usuário adicionar o valor em dinheiro, e o valor dessa variável será reduzido quando a tarefa de compra for concluída com sucesso.

responder:

É uma variável de string e será usada para levar o valor de entrada do usuário para realizar a tarefa específica.

Métodos

display_menu ():

Este método foi definido para mostrar a lista de menus do aplicativo. Se os tipos de usuário “1”, Então o conteúdo do produtos.TXT O arquivo será exibido. Se os tipos de usuário “2”, Então o prompt de entrada para receber o nome do produto aparecerá. Se o nome do produto fornecido pelo usuário existir no arquivo, o nome do produto será adicionado ao CART_ITEMS lista, e o preço do produto será adicionado com Cart_amount. Se os tipos de usuário “3”, Então o aplicativo será encerrado. A função FG () foi usada no método para imprimir o texto colorido no terminal.

display_products ():

Este método foi definido para ler o produtos.TXT Arquivo linha por linha, divida cada linha com base na vírgula usando a função split () e armazená -la em uma variável de lista. Em seguida, a variável da lista será iterada usando um loop para imprimir o conteúdo do arquivo em um formato legível por humanos.

check_products ():

Este método foi definido para verificar se o nome do produto retirado do usuário existe no produtos.TXT arquivo. Se o nome do produto existir no arquivo, o preço desse produto em particular será adicionado com o valor do Cart_amount variável e a verdade o valor será devolvido da função. A mensagem, "O produto não existe.”Será impresso se o nome do produto não existir no arquivo e o Falso o valor será devolvido da função. Este método será chamado sempre que um nome de produto for retirado do usuário para adicionar ao carrinho.

O script do “comprar”A classe é fornecida abaixo:

"
A classe 'Shop' é definida aqui para mostrar o menu principal, exibir lista de produtos,
e verifique se o produto existe no arquivo ou não
"
loja de aula:
# Declare List para armazenar o produto selecionado
Cart_items = []
# Inicialize o valor do carrinho
Cart_amount = 0
# Inicialize o saldo do cliente
cust_balance = 0
# Inicialize a variável que levará a entrada do usuário
resposta = "
# Defina função para exibir o menu principal
def Display_menu (self):
print ("\ n%s%s%s"%(FG (150), '*** Bem -vindo à nossa loja de bolos ***', attr (0)))
print ("\ n%s%s"%(FG (170), '1. Exibir produtos… ')))
impressão ("2. Selecione Produto… ")
impressão ("3. Saída")
auto.resposta = entrada ("\ ntype 1 ou 2 ou 3:")
# Defina função para ler e exibir o produto do arquivo de texto
def Display_Products (self):
Imprimir ("\ nA lista de produtos são fornecidos abaixo: \ n")
com o aberto ('produtos.txt ') como f:
linha = f.Leia a linha()
# Imprima o cabeçalho do arquivo
Print ("Id \ TNAME \ T \ TPRICE \ TMAKING DATE \ Texpire Date")
enquanto linha:
# Inicialize o contador para definir o espaço entre os campos
contador = 0
# Leia cada linha do arquivo
linha = f.Leia a linha()
# Dividir cada linha com base na vírgula (,) e armazenar em uma lista
fieldlist = list (linha.dividir(","))
print ('\ t')
# Leia cada valor da lista e imprima
Para Val na lista de campo:
se contador == 0:
Space = "
outro:
espaço = '\ t'
contador = contador + 1
Se contador == 3:
val = '$' + val
Imprimir (val, final = espaço)
# Defina a função para verificar o produto selecionado existe no arquivo ou não
def check_products (self, pesquisa):
# Abra o arquivo para leitura
com o aberto ('produtos.txt ') como f:
# Leia cada linha do arquivo
para linha em f:
# Divida o valor da linha com base em vírgula (,)
fieldlist = list (linha.dividir(","))
Para Val na lista de campo:
# Verifique a correspondência do produto selecionado com o valor ou não
se search == val.faixa():
# Adicione o preço do produto com o valor do carrinho se o valor de Serch encontrado
auto.Cart_amount = self.Cart_amount + int (FieldList [2].faixa())
retornar verdadeiro
# Imprimir mensagem se o produto selecionado não existir no arquivo
print ("O produto não existe.")
retorna falso

Crie aula de “ordem”

Depois de adicionar o “comprar”Classe, adicione o script para definir o“ordem”Class comprar.py arquivo. Esta é uma classe infantil herdada do “comprar”Classe que contém três métodos. O objetivo desses métodos é mencionado abaixo.

Métodos

adicionar ao carrinho():

Este método foi definido para adicionar o nome do produto ao CART_ITEMS Lista se o produto existir no produtos.TXT Arquive e imprima uma mensagem depois de adicionar o produto ao carrinho. Este método será chamado quando o usuário selecionar a segunda opção ("Selecionar produto ...") do menu principal digitando "2" ou a primeira opção do segundo menu ("Adicionar produto") digitando "1".

Remone_from_cart ():

Este método foi definido para remover o produto do CART_ITEMS Liste se o nome do produto retirado do usuário existir no CART_ITEMS. Este método será chamado quando o usuário selecionar a segunda opção do segundo menu ("Remover produto") digitando "2". Depois de remover o produto, o preço do produto removido será deduzido do Cart_amount variável. ““O produto não existe no carrinho.”A mensagem será impressa se o nome do produto retirado do usuário não existir no CART_ITEMS lista.

display_cart ():

Este método foi definido para exibir o conteúdo do CART_ITEMS Lista, o valor do Cart_amount, e os itens do segundo menu para adicionar produto ou remover o produto ou confirmar o pagamento ou cancelar a compra. Se o CART_ITEMS A lista está vazia, depois a mensagem: “Seu carrinho está vazio." será exibido. Este método será chamado quando a tarefa de adicionar um produto ou remover um produto for concluída. Este método retornará os valores da lista CART_Items se o carrinho não estiver vazio ou retornará 0 se o carrinho estiver vazio.

O script do “ordem”A classe é fornecida abaixo:

"
A classe 'Order' é definida para adicionar produto ao carrinho, remova o produto
do carrinho e exibir o item do carrinho
"
Ordem de aula (loja):
# Defina função para adicionar produto ao carrinho
DEFT add_to_cart (self, item):
# Adicionar produto no carrinho
auto.CART_ITEMS.Anexar (item)
impressão ("%s é adicionado no carrinho." %(item))
# Defina a função para remover o produto do carrinho
def remover_from_cart (self, obj):
item = entrada ("Digite o nome do produto:")
Se item em obj.Cart_items:
# Remova o produto do carrinho
obj.CART_ITEMS.remover item)
Impressão ("O produto é removido do carrinho")
# Abra o arquivo para pesquisar o preço do produto
com o aberto ('produtos.txt ') como f:
para linha em f:
fieldlist = list (linha.dividir(","))
Para Val na lista de campo:
se item == val.faixa():
# Remova o preço do produto removido do valor do carrinho
obj.Cart_amount = OBJ.Cart_amount - int (FieldList [2].faixa())
outro:
impressão ("o produto não existe no carrinho.")
# Defina a função para exibir os itens do carrinho
def Display_Cart (self, obj):
# Verifique o valor do carrinho para descobrir que o carrinho está vazio ou não
se obj.Cart_amount> 0:
# Exiba os itens de carrinho adicionados
Impressão ("\ nvé adicionou os seguintes itens no (s) (s) (s) (s) carrinho
para Val em si mesmo.Cart_items:
Imprimir (Val)
# Imprima o valor total do carrinho
impressão ("\ n%s%s%d%s"%(FG (25), 'valor total: $', obj.Cart_amount, Att (0)))
# Exiba o segundo menu
impressão ("\ n1. Adicionar produto ")
impressão ("2. Remover o produto ")
impressão ("3. Confirme o pagamento")
impressão ("4. Cancelar")
Ans = entrada ("\ nType 1 ou 2 ou 3 ou 4:")
retornar Ans
outro:
# Mensagem de impressão se o carrinho estiver vazio
impressão ("seu carrinho está vazio.")
retornar 0

Crie aula de "cliente"

Depois de adicionar o “ordem”Classe, adicione o script para definir o“cliente”Class comprar.py arquivo. Esta é outra classe infantil herdada do “ordem”Classe contendo o método do construtor e um método definido pelo usuário. O objetivo desses métodos é mencionado abaixo.

Métodos:

Método construtor

O método construtor é definido por __init __ (). Suponha que o usuário selecione a terceira opção do segundo menu ("Confirmar pagamento"). Nesse caso, o construtor do “cliente”A classe será chamada para inicializar as informações do cliente no momento da criação de objetos do“cliente”Class e competir pela tarefa de compra. Este método levará quatro argumentos. Estes são nome, endereço, telefone e dinheiro.

compra_info ():

Este método foi definido para exibir os detalhes de compra que contêm o número do pedido, a data do pedido, o nome do cliente, o endereço do cliente, o telefone do cliente, a lista de produtos adquiridos e o preço total de todos os produtos comprados. Aqui, o número do pedido será gerado usando a função aleatória (). Este método será chamado se o valor de caixa agregado pelo usuário for maior ou igual ao valor de o Cart_amount variável.

O script do “cliente”A classe é fornecida abaixo:

"
ID da classe 'Cliente' definido para exibir as informações de compra
Depois de confirmar o pagamento
"
CLASSE CLIENTE (PEDIDO):
# Defina o construtor para inicializar as informações do cliente
def __init __ (self, nome, endereço, telefone, dinheiro):
nome = nome
endereço = endereço
contact_no = telefone
add_cash = dinheiro
# Defina a função para exibir as informações de compra com detalhes do cliente
def compra_info (self, obj):
# Gnerate um número de pedido aleatório
order_no = aleatório.Random ()*100000000
order_no = redond (order_no)
# Inicie a data do pedido
hoje = data.hoje()
order_date = hoje.strftime (" %b %d, %y")
# Informações de compra de impressão
Print ("\ nyour compra Informações é dada abaixo: \ n")
print ("Pedido não: %s" %order_no)
print ("Data do pedido: %s" %order_date)
Print ("Nome do cliente: %s" Nome %)
Imprimir (endereço do cliente: %s " %endereço)
Print ("telefone do cliente não: %s" %contact_no)
# Impressão Informações do produto comprado
Print ("Lista de produtos de \ npurchased: \ n")
para Val em si mesmo.Cart_items:
Imprimir (Val)
impressão ("\ n%s%s%d%s"%(FG (25), 'valor total: $', obj.Cart_amount, Att (0)))
print ("Obrigado.")

Criar objetos

Depois de definir as classes de aplicação necessárias, adicione o script para criar objetos para usar as variáveis ​​de classe e ligue para os métodos para concluir a implementação do "Aplicativo da loja de bolos". A princípio, o objeto do “comprar”A classe será definida e a display_menu () O método será chamado usando este objeto para exibir o menu principal. No script, o primeiro loop infinito foi usado para exibir o menu principal no início do aplicativo e depois de confirmar ou cancelar a compra. Esse loop será encerrado e o aplicativo será fechado quando o usuário selecionar a terceira opção ("saída") do menu principal. O segundo loop infinito foi usado para adicionar os produtos ao carrinho até que os tipos de usuário “nenhum" e exibe o segundo menu depois de adicionar ou remover um produto no carrinho. Este loop será encerrado se o usuário selecionar o terceiro ("Confirmar pagamento") ou o quarto ("cancelar") do segundo menu. Suponha que o usuário selecione a terceira opção do segundo menu e o valor em dinheiro adicionado pelo usuário é menor que o Cart_amount valor. Então o segundo menu aparecerá novamente exibindo a mensagem: “Você não tem equilíbrio suficiente.”. Ambos CART_ITEMS e Cart_amount Os valores serão limpos após o término do segundo loop infinito para fazer a próxima compra. O script desta parte é fornecido abaixo:

# Declare o objeto da aula de 'loja'
objShop = shop ()
# Declare o loop infinito para exibir o menu repetidamente
# até o usuário pressionar '3'
enquanto é verdade:
# Exiba o menu principal
objShop.display_menu ()
# Defina o valor inicial para o Remone_item
remove_item = false
# Exiba o menu principal se o usuário pressionar '1'
Se objShop.resposta == '1':
objShop.display_products ()
# Exiba a opção de compra se o usuário pressionar '2'
Elif ObjShop.resposta == '2':
# Declare o objeto da classe 'Order'
objorder = ordem ()
# Declare o loop infinito para exibir o segundo menu repetidamente
# até o usuário pressionar '3' ou '4'
enquanto é verdade:
# Pegue o nome do produto para adicionar no carrinho se o valor de remover_item for falso
se remover_item == false:
item = input ("\ ntype o nome do produto:")
Se item == 'nenhum':
# Exiba o carrinho depois de adicionar ou remover o produto
return_val = objorder.display_cart (objShop)
# Termine do loop se o carrinho estiver vazio
se return_val == 0:
quebrar
elif return_val == '1':
item = entrada ("Digite o nome do produto:")
# Verifique se o produto existe nos produtos.arquivo txt ou não
pro_exist = objShop.check_products (item)
# Adicione os produtos ao carrinho se o produto existir
se pro_exist == true:
Objomer.add_to_cart (item)
remove_item = false
elif return_val == '2':
# Remova o produto selecionado do carrinho
return_val = objorder.Remone_from_cart (objShop)
remove_item = true
elif return_val == '3':
# Pegue as informações do cliente
nome = entrada ("Digite seu nome:")
endereço = entrada ("Digite seu endereço:")
contact_no = input ("Digite seu número de contato:")
dinheiro = int (entrada ("Adicione dinheiro: $"))
# Adicione o valor em dinheiro com o saldo atual do cliente
objShop.cust_balance = objShop.cust_balance + dinheiro
# Verifique o saldo do cliente é menor que o valor do carrinho não
Se objShop.cust_balance < objShop.cart_amount:
Imprima ("Você não tem equilíbrio suficiente.")
outro:
# Crie objeto da classe 'Cliente'
objcustomer = cliente (nome, endereço, contato_no, dinheiro)
# Imprima as informações de compra
objcustomer.compra_info (objShop)
# Deduzir o valor da compra do saldo do cliente
objShop.cust_balance = dinheiro - objShop.Cart_amount
quebrar
outro:
# Imprimir mensagem se o cliente cancelar a compra
Imprima ("Você cancelou sua compra.")
quebrar
outro:
# Adicione os produtos ao carrinho se o produto existir
pro_exist = objShop.check_products (item)
se pro_exist == true:
Objomer.add_to_cart (item)
Imprima ("Tipo 'nenhum' para parar de adicionar produto")
# Limpe a lista de carrinhos após comprada ou cancelada
objShop.CART_ITEMS.claro()
# Limpe o valor do carrinho após comprado ou cancelado
objShop.Cart_amount = 0
# Termine do aplicativo se os usuários pressionarem '3'
Elif ObjShop.resposta == '3':
impressão ("\ terminado a partir do aplicativo.")
saída()

Saída de aplicativo

Depois de adicionar todos os scripts ao comprar.py Arquive em série, você pode verificar se o aplicativo está funcionando corretamente ou não. A maneira de usar este aplicativo foi mostrada nesta parte do tutorial.

Execute o aplicativo

A princípio, o usuário precisa abrir o terminal e ir para o local onde o produtos.TXT e comprar.py Os arquivos estão localizados. Você deve armazenar esses arquivos no mesmo local para obter a saída corretamente. Execute o seguinte comando para executar o aplicativo:

$ python3 loja.py

A saída a seguir aparecerá após a execução do comando anterior. Este é o menu principal deste aplicativo. O usuário pode selecionar qualquer uma das três opções mostradas na saída digitando "1" ou "2" ou "3". A lista dos produtos será exibida se os tipos de usuário, "1". O prompt de entrada para receber o nome do produto aparecerá se os tipos de usuário, "2". O aplicativo será fechado se os tipos de usuário, "3". O menu aparecerá novamente se o usuário digitar qualquer outro personagem.

Exibir produtos

A saída a seguir aparecerá se os tipos de usuário "1". O conteúdo do produtos.TXT O arquivo foi mostrado nesta saída. O usuário pode selecionar todos os nomes de bolos mostrados na saída para adicionar ao carrinho, e o usuário deve selecionar a segunda opção do menu para executar a tarefa.

Adicione o produto no carrinho usando o menu principal

Existem duas maneiras no aplicativo para adicionar o produto ao carrinho. A primeira maneira é selecionar a segunda opção no menu principal. A saída a seguir aparecerá se o usuário digitar "2". O usuário deve digitar o nome de qualquer item de bolo que existe no arquivo para adicioná -lo ao carrinho.

A saída a seguir aparecerá se os tipos de usuário “Bolo de lama”Isso existe na lista de produtos. A saída mostra que o produto foi adicionado ao carrinho e o usuário pode adicionar outro produto digitando o nome do produto novamente. Se o usuário não quiser adicionar nenhum produto, ele deve digitar “nenhum”.

A saída a seguir aparecerá se outro produto chamado “Bolo de café" Está adicionado:

A saída a seguir aparecerá se o valor “nenhum”É digitado como o valor de entrada. A lista dos itens do carrinho é mostrada na saída. Dois itens de bolo foram adicionados: “Bolo de lama" e "Bolo de café”. O preço do “Bolo de lama" é $ 35 e a "Bolo de café" é US $ 22. O preço total dos bolos é de US $ 35+$ 22 = $ 57, mostrado na saída. O segundo menu foi exibido após exibir as informações do carrinho. O usuário pode adicionar produtos, remover produtos, comprar os produtos adicionados ao carrinho e cancelar a compra usando este menu:

Adicione o produto no carrinho usando o segundo menu

A saída a seguir aparecerá se o usuário digitar "2". O usuário precisa digitar o nome de qualquer item de bolo que existe no arquivo para adicioná -lo ao carrinho.

A saída a seguir aparecerá após digitar o “bolo de baunilha” como o valor de entrada. O usuário pode adicionar mais itens ao carrinho digitando o nome do produto novamente. Se o usuário não quiser adicionar mais produtos, ele deve digitar "nenhum" para parar de adicionar o produto ao carrinho.

A saída a seguir aparecerá após a digitação “nenhum”Como o valor de entrada. A saída mostra que o novo produto “Bolo de baunilha”Foi adicionado ao carrinho e o preço do“Bolo de baunilha”Foi adicionado com o valor do carrinho. Portanto, o valor total é agora $ 57 + $ 30 = $ 87. O segundo menu apareceu novamente. O objetivo deste menu foi explicado anteriormente.

Remova o produto do carrinho

A saída a seguir aparecerá se os tipos de usuário “2”Como o valor de entrada. O usuário deve digitar o nome de qualquer item de bolo que existe no carrinho para removê -lo do carrinho. Se o usuário digitar algum valor que não exista no carrinho, uma mensagem de erro será impressa.

A saída a seguir aparecerá se os tipos de usuário “Bolo de chocolate”Como um valor de entrada que existe nos produtos.arquivo txt, mas não existe no carrinho. Então, a mensagem de erro, “O produto não existe no carrinho.“, Apareceu na saída e nenhum item foi adicionado ou removido do carrinho. O valor total do valor do carrinho também não mudou.

A saída a seguir aparecerá se os tipos de usuário, “Bolo de café”Como o valor de entrada que existe no carrinho. A mensagem de sucesso, "o produto é removido do carrinho", foi impresso. A saída também mostra que “Bolo de café”Foi removido do carrinho e o valor do preço deste item foi deduzido do valor do valor do carrinho. O preço do “Bolo de café”É $ 22. Portanto, o valor total do carrinho agora é de US $ 87 - US $ 22 = $ 65.

A saída a seguir aparecerá se todos os itens do carrinho forem removidos. A saída mostra duas mensagens. Um é remover o último produto, e outro é informar o usuário que o carrinho agora está vazio. Como não há produto no carrinho, o segundo menu se foi e o menu principal apareceu novamente.

Faça o pagamento

A terceira opção do segundo menu é usada para confirmar a compra adicionando as informações do cliente e o valor do valor do carrinho. A saída a seguir aparecerá se os tipos de usuário "3" Para selecionar a terceira opção do segundo menu depois de adicionar alguns itens de bolo ao carrinho. A saída mostra que dois itens de bolo são adicionados ao carrinho e o preço total dos bolos é de US $ 60. O prompt de entrada para receber o nome do cliente apareceu após digitar o valor, "3". Em seguida, outros avisos de entrada parecerão adicionar outras informações relacionadas ao cliente e o valor em dinheiro para comprar o produto.

Na saída a seguir, o nome do cliente, endereço, número de telefone e o valor em dinheiro foram adicionados. Mas o valor em dinheiro agregado é menor que o preço total dos produtos. O valor total do carrinho foi de US $ 60 e US $ 45 foram adicionados como valor em dinheiro. A mensagem: “Você não tem equilíbrio suficiente.”Apareceu por esse motivo, e a ordem foi cancelada, deixando o carrinho vazio. O menu principal apareceu novamente.

A saída a seguir aparecerá se o dinheiro adicionado pelo usuário for igual ou mais que o valor total do carrinho. Aqui, o preço total do carrinho é de US $ 35 e o usuário adicionou US $ 100 como valor em dinheiro, que é maior que o preço total. A saída também mostra que um número aleatório foi gerado como o número do pedido, e a data atual do sistema foi impressa como a data do pedido. O menu principal apareceu novamente para a próxima compra. O saldo atual do usuário é de US $ 100 - US $ 35 = $ 65. Se o mesmo usuário comprar novamente qualquer item de bolo da loja, o valor da compra será deduzido do saldo atual do usuário.

A saída a seguir aparecerá se o usuário comprar novamente e o valor da compra for menor que o saldo atual. De acordo com a produção, dois itens de bolo foram adicionados ao carrinho e o preço total dos bolos é de US $ 47. O usuário adicionou US $ 0 em dinheiro, mas o saldo atual do cliente é de US $ 65. Então, o pagamento foi concluído com sucesso e a mensagem "Obrigado" foi impressa. O saldo atual do usuário é de US $ 65 - $ 47 = $ 18.

Se o mesmo usuário adicionar novamente um item ao carrinho e o preço total do item for menor que o saldo atual do usuário, a seguinte saída será exibida. O saldo atual do usuário é de US $ 18 após a última transação, mas o preço total do produto é de US $ 30. Então, a mensagem: “Você não tem equilíbrio suficiente.”Foi impresso e o pedido foi cancelado, deixando o carrinho vazio.

A saída a seguir aparecerá se o usuário adicionar US $ 12 com os US $ 18 para comprar o “Bolo de baunilha”De US $ 30. O saldo atual do usuário é de US $ 0 após a compra.

Cancelar o pagamento

O usuário pode cancelar o pedido depois de adicionar itens ao carrinho selecionando a quarta opção do segundo menu ou removendo todos os itens do carrinho. A saída a seguir aparecerá se o usuário selecionar a quarta opção do segundo menu digitando "4". A mensagem: “Você cancelou sua compra.”Foi impresso para cancelar o pedido. A maneira de cancelar a ordem removendo todos os itens do carrinho foi mostrada antes. O menu principal será aparecido após o cancelamento do pedido.

Feche o aplicativo

O aplicativo pode ser fechado selecionando a terceira opção no menu principal. A saída a seguir aparecerá se os tipos de usuário "3" Para fechar o aplicativo. O aplicativo foi encerrado pela mensagem, “encerrado do aplicativo”.

Limitações deste aplicativo

A maneira de implementar um aplicativo baseado em texto muito simples das classes Python foi mostrado neste tutorial. Mas este aplicativo tem algumas limitações, mencionadas abaixo:

  • Nenhum pedido ou informação do cliente é armazenado permanentemente. O aplicativo precisa manter os registros das vendas anteriores. Mais dois arquivos de texto podem ser criados para armazenar o pedido e as informações do cliente.
  • Nenhum registro de ações é mantido neste aplicativo, que é uma parte importante do aplicativo da loja. Se algum produto estiver fora de estoque, uma mensagem deve ser passada para o usuário.
  • Se o usuário adicionar o mesmo produto várias vezes, cada produto será adicionado separadamente, o que é ineficiente. É essencial contar o número de cada produto no carrinho se o mesmo produto for adicionado várias vezes.
  • Não há opção para remover todos os itens do carrinho por comando único sem cancelar o pedido. O usuário precisa remover cada item separadamente para tornar o carrinho vazio.
  • O saldo restante do cliente não é exibido após a conclusão do pagamento do pedido. Ajudará o usuário a adicionar dinheiro para o próximo pedido.

*** Os leitores deste tutorial tentarão implementar os recursos mencionados acima para desenvolver suas habilidades de programação e tornar o aplicativo mais eficiente para aprender.

Tutorial em vídeo sobre este tópico

Conclusão

As diretrizes para implementar um aplicativo Python simples baseado em texto foram fornecidas neste tutorial para usuários iniciantes de python. Os recursos básicos do aplicativo da loja são usados ​​para implementar neste tutorial, como lista de produtos, adicionar ao carrinho, remover do carrinho, sistema de pagamento e cancelar o pagamento. Para simplificar, usamos o arquivo de texto aqui para armazenar os dados permanentemente. Mas qualquer aplicativo de banco de dados padrão, como SQLite e MySQL, pode ser usado para gerenciar os dados do aplicativo com mais eficiência.