0% acharam este documento útil (0 voto)
29 visualizações5 páginas

Classes de Cachorro e Aluno em Python

O documento apresenta a implementação de duas classes em Python: 'Cachorro' e 'Aluno', cada uma com métodos para manipulação de atributos e cálculos de média e aprovação. Além disso, inclui um esboço de uma interface gráfica usando Tkinter para cadastro de clientes, com funções para habilitar, desabilitar e validar campos. O código contém erros de sintaxe e lógica que precisam ser corrigidos para funcionar corretamente.

Enviado por

danigsmachado3
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato TXT, PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
29 visualizações5 páginas

Classes de Cachorro e Aluno em Python

O documento apresenta a implementação de duas classes em Python: 'Cachorro' e 'Aluno', cada uma com métodos para manipulação de atributos e cálculos de média e aprovação. Além disso, inclui um esboço de uma interface gráfica usando Tkinter para cadastro de clientes, com funções para habilitar, desabilitar e validar campos. O código contém erros de sintaxe e lógica que precisam ser corrigidos para funcionar corretamente.

Enviado por

danigsmachado3
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato TXT, PDF, TXT ou leia on-line no Scribd

class Cachorro:

#Método Construtor
def __init__(self, nome=None, raca=None, tamanho=None):
# Atributos encapsulados
self.__nome = nome
self.__raca = raca
self.__tamanho = tamanho

def latir(self):
print("au au au")

def get_nome(self):
return self.__nome
def set_nome(self, nome):
self.__nome = nome
def get_raca(self):
return self.__raca
def get_tamanho(self):
return self.__tamanho
def set_raca(self, raca):
self.__raca = raca
def set_tamanho(self, tamanho):
self.__tamanho = tamanho

def __str__(self):
return f"[Cachorro: nome= {self.__nome} raça= {self.__raca} tamanho=
{self.__tamanho}]"

# Principal

cachorro_meu = Cachorro("Max", "Pitbull", 80)


cachorro_de_alguem = Cachorro("Rebeca", "Pincher", 20)
cachorro_dele = Cachorro()

cachorro_meu.latir()
cachorro_meu.latir()
print(cachorro_meu.get_nome())
print(cachorro_de_alguem.get_nome())
cachorro_meu.set_nome("Steve")
print(cachorro_meu.get_nome())

cachorro_de_alguem.set_nome("Joana")
cachorro_de_alguem.set_raca("Shi Tzu")
cachorro_de_alguem.set_tamanho(20)

cachorro_dele.set_nome("River")
cachorro_dele.set_raca("Pastor Alemao")
cachorro_dele.set_tamanho(40)

print(cachorro_dele)
print(cachorro_de_alguem)
print(cachorro_meu)

class Aluno:
def __init__(self, nome="None", nota1="None", nota2="None"):
self.__nome = nome
self.__nota1 = nota1
self.__nota2 = nota2
def get_nome(self):
return self.__nome

def get_nota1(self):
return self.__nota1

def get_nota2(self):
return self.__nota2

def set_nome(self, nome):


self.__nome = nome

def set_nota1(self, nota1):


self.__nota1 = nota1
int(nota1)

def set_nota2(self, nota2):


self.__nota2 = nota2
int(nota2)

def calcular_media(self):
return self.__nota1 + self.__nota2 / 2

def calcular_aprovacao:
media = self.__nota1 + self.__nota2 / 2
if media >= 6:
return "Aprovado"
else:
return "Reprovado"

def __str__(self):
return f"Aluno: {self.__nome}; Primeira nota: {self.__nota1}; Segunda nota:
{self.__nota2} média: {self.calcular_media()} aprovação:
{self.calcular_aprovacao()} "
#programa principal

aluno1 = Aluno()
aluno2 = Aluno("João", 5, 8)
aluno3 = Aluno("Niel", 6, 8)
aluno1.set_nome("Jay")
aluno1.set_nota1(2)
aluno1.set_nota2(7)
print(aluno2)
print("Média:", aluno2.calcular_media())
print("Situação:", aluno2.calcular_aprovacao())
print(aluno1)
print("Média:", aluno1.calcular_media())
print("Situação:", aluno1.calcular_aprovacao())
print(aluno2)
print("Média:", aluno3.calcular_media())
print("Situação:", aluno3.calcular_aprovacao())

from tkinter import *


from tkinter import ttk, messagebox, simpledialog
from utilis1 import localizar_endereço, municipios_por_estado, listar_estados

global novo
novo = True
# montagem da tela

win = Tk()
largura_tela = win.winfo_screenwidth()
altura_tela = win.winfo_screenheight()
largura_win = 670
altura_win = 400

pos_x = (largura_tela - largura_win)/2


pos_y = (altura_tela - altura_win)/2

[Link]("Cadastro de Clientes")
[Link]("%dx%d+%d+%d"%(largura_win,altura_win,pos_x,pos_y)) # Sempre
centralizado
[Link](bg="#B40808")

# funcoes

def popular_cidades():
global cidades
cidades = municipios_por_estado([Link]())

def buscar_endereco():
dados_end = localizar_endereço([Link]())
if dados_end:
[Link](dados_end["logradouro"])
[Link](dados_end["bairro"])
[Link](dados_end["localidade"])
[Link](dados_end["uf"])

def atualizar_cidade(event):
estado_selecionado = [Link]()
lista_cidades = municipios_por_estado(estado)
cbocidade["values"] = lista_cidades

def pesquisar():
resposta = [Link]("Pesquisa", "Digite o email do cliente:")
# buscar o email digitado na tebala do banco de dado com o select
global novo
novo = False
habilitar()
[Link](state="normal")

def habilitar():
[Link](state="normal")
[Link](state="normal")
[Link](state="normal")
[Link](state="normal")
[Link](state="normal")
[Link](state="normal")
[Link](state="normal")
[Link](state="normal")
bttnest_cv.configure(state="normal")
bttnest_cv2.configure(state="normal")
[Link](state="normal")
[Link](state="normal")
[Link](state="normal")
[Link](state="normal")
[Link](state="normal")
[Link](state="normal")
[Link](state="normal")
[Link](state="normal")
[Link](state="normal")
[Link](state="normal")

[Link](state="disabled")

def desabilitar():
[Link](state="disabled")
[Link](state="disabled")
[Link](state="disabled")
[Link](state="disabled")
[Link](state="disabled")
[Link](state="disabled")
[Link](state="disabled")
[Link](state="disabled")
bttnest_cv.configure(state="disabled")
bttnest_cv2.configure(state="disabled")
[Link](state="disabled")
[Link](state="disabled")
[Link](state="disabled")
[Link](state="disabled")
[Link](state="disabled")
[Link](state="disabled")
[Link](state="disabled")
[Link](state="disabled")
[Link](state="disabled")
[Link](state="disabled")

[Link](state="normal")

def limpar():
[Link]("")
[Link]("")
est_cv.set(0)
[Link](False)
[Link](False)
[Link]("")
[Link]("")
[Link]("")
[Link]("")
[Link]("")
[Link]("")
[Link]("")
[Link]("")
[Link]("")

def inserir():
habilitar()
limpar()

def salvar():
# validar os campos
# gravar no bd
if [Link]() == "":
[Link](title="Validação:", message="O campo de email é
obrigatório!")
txtemail.focus_set()
elif [Link]== "":
[Link](title="Validação:", message="O campo de nome é
obrigatório!")
txtnome.focus_set()
elif [Link]()== "":
[Link](title="Validação:", message="O campo de gênero é
obrigatório!")
cbogenero.focus_set()
elif [Link]== "":
[Link](title="Validação:", message="O campo de número é
obrigatório!")
txtnumero.focus_set()
elif [Link]== "":
[Link](title="Validação:", message="O campo de bairro é
obrigatório!")
txtbairro.focus_set()
elif [Link]()== "":
[Link](title="Validação:", message="O campo de estado é
obrigatório!")
cboestado.focus_set()
elif [Link]()== "":
[Link](title="Validação:", message="O campo de cidade é
obrigatório!")
cbocidade.focus_set()
elif [Link]== "":
[Link](title="Validação:", message="O campo de telefone é
obrigatório!")
txttelefone.focus_set()
else:
global novo
if novo:
[Link](title="Sucesso", message="Comando Incluido com sucesso!")
else:
[Link](title="Sucesso", message="Dados atualizados com
sucesso!")
novo = True
limpar()
desabilitar()
[Link](title="Sucesso", message="Dados Gravados com sucesso!")
limpar()
desabilitar()

Você também pode gostar