Classes e Objetos
Uma classe é um projeto para criar objetos que agrupam dados (atributos) junto com as funções que operam sobre esses dados (métodos). Todo cachorro que você criar a partir de uma classe Dog compartilha a mesma estrutura, mas guarda seus próprios valores.
main.py
Teste você mesmo →class Dog:
def __init__(self, name, age):
self.name = name
self.age = age
def bark(self):
return f"{self.name} says Woof!"
my_dog = Dog("Rex", 3)
print(my_dog.name)
print(my_dog.bark())Output
Rex Rex says Woof!
- __init__ roda automaticamente quando você cria um novo objeto — é onde você configura os dados iniciais do objeto
- self se refere ao objeto específico sobre o qual o método está sendo chamado — é sempre o primeiro parâmetro de um método
- self.name = name guarda o valor como um atributo, para que qualquer método deste objeto possa acessá-lo depois
- Dog("Rex", 3) cria um objeto real (uma "instância") da classe Dog
Você poderia criar quantos cachorros quisesse a partir da mesma classe — Dog("Bella", 5), Dog("Max", 1) — cada um mantendo seu próprio nome e idade de forma independente.
A seguir: módulos — usar a biblioteca padrão do Python em vez de escrever tudo do zero.
Exercício de Prática
Adicione um método honk() à classe Car que retorne f"{self.make} says beep!", e depois imprima o resultado de chamá-lo em um Car("Toyota").