Python Class com Atributos
Neste artigo, vamos falar sobre classes em Python e como criar uma classe com atributos.
Glossário
O que é uma classe em Python?
Uma classe em Python é uma estrutura fundamental na programação orientada a objetos. Ela serve como um modelo ou um plano para a criação de objetos, que são instâncias dessa classe. Em outras palavras, uma classe define as características e comportamentos que um objeto desse tipo pode ter.
Como criar uma classe em Python com atributos?
Para criar uma classe em Python com atributos, devemos definir os atributos dentro da classe. Os atributos podem ser de diferentes tipos, como inteiros, strings, listas, entre outros. Aqui está um exemplo de como criar uma classe chamada “Pessoa” com atributos como nome, idade e cidade:
class Pessoa:
def __init__(self, nome, idade, cidade):
self.nome = nome
self.idade = idade
self.cidade = cidade
Nesse exemplo, o método especial __init__
é usado para inicializar os atributos da classe. O parâmetro self
refere-se ao objeto atual da classe. Dentro do método __init__
, definimos os atributos da classe usando a notação self.nome_do_atributo = valor
.
Como acessar e modificar os atributos de uma classe em Python?
Para acessar os atributos de uma classe em Python, utilizamos a notação objeto.atributo
. Podemos acessar os atributos tanto dentro da classe, nos métodos da classe, quanto fora da classe, nos objetos criados a partir dessa classe.
Por exemplo, suponha que tenhamos uma classe chamada “Carro” com um atributo chamado “cor”:



class Carro:
def __init__(self, cor):
self.cor = cor
Para acessar o atributo “cor” dentro da classe, usamos a notação self.cor
. Por exemplo, podemos definir um método na classe “Carro” para imprimir a cor do carro:
class Carro:
def __init__(self, cor):
self.cor = cor
def imprimir_cor(self):
print(f"A cor do carro é {self.cor}.")
Para acessar e modificar o atributo “cor” fora da classe, precisamos criar um objeto da classe “Carro” e utilizar a notação objeto.atributo
. Por exemplo:
carro1 = Carro("vermelho")
print(carro1.cor) # Saída: vermelho
carro1.cor = "azul"
print(carro1.cor) # Saída: azul
Exemplos práticos de classes em Python com atributos.
A criação de classes em Python com atributos é muito útil para modelar objetos do mundo real em programas de computador. Vamos ver alguns exemplos práticos de classes com atributos em Python:
1. Classe “Cachorro”:
class Cachorro:
def __init__(self, nome, idade):
self.nome = nome
self.idade = idade
def latir(self):
print("Au au!")
cachorro1 = Cachorro("Rex", 3)
print(cachorro1.nome) # Saída: Rex
print(cachorro1.idade) # Saída: 3
cachorro1.latir() # Saída: Au au!
Nesse exemplo, a classe “Cachorro” possui os atributos “nome” e “idade”, além do método “latir”.
2. Classe “Conta Bancária”:
class ContaBancaria:
def __init__(self, numero, saldo):
self.numero = numero
self.saldo = saldo
def depositar(self, valor):
self.saldo += valor
def sacar(self, valor):
if self.saldo >= valor:
self.saldo -= valor
else:
print("Saldo insuficiente.")
conta1 = ContaBancaria(123456, 1000)
print(conta1.numero) # Saída: 123456
print(conta1.saldo) # Saída: 1000
conta1.depositar(500)
print(conta1.saldo) # Saída: 1500
conta1.sacar(2000) # Saída: Saldo insuficiente.
Nesse exemplo, a classe “ContaBancaria” possui os atributos “numero” e “saldo”, além dos métodos “depositar” e “sacar”.
Esses são apenas alguns exemplos de como criar e usar classes em Python com atributos. As classes nos permitem organizar e estruturar nosso código de forma mais eficiente, tornando-o mais fácil de entender e manter. Com as classes, podemos criar objetos personalizados e adicionar comportamentos específicos a eles, tornando nossos programas mais poderosos e flexíveis.
Como acessar e modificar os atributos de uma classe em Python?
Em Python, podemos acessar e modificar os atributos de uma classe de diferentes maneiras. Vamos explorar algumas dessas formas a seguir:
1. Acessando atributos dentro da classe:
Dentro da classe, podemos acessar os atributos usando a palavra-chave “self” seguida do nome do atributo. Por exemplo:
class Pessoa:
def __init__(self, nome, idade):
self.nome = nome
self.idade = idade
def imprimir_nome(self):
print(f"O nome da pessoa é {self.nome}.")
pessoa1 = Pessoa("Maria", 30)
pessoa1.imprimir_nome() # Saída: O nome da pessoa é Maria.
2. Acessando atributos fora da classe:
Para acessar os atributos de uma classe fora dela, precisamos criar um objeto da classe. Podemos então utilizar a notação de ponto para acessar o atributo desejado. Vejamos um exemplo:
class Carro:
def __init__(self, marca, modelo):
self.marca = marca
self.modelo = modelo
carro1 = Carro("Ford", "Fiesta")
print(carro1.marca) # Saída: Ford
print(carro1.modelo) # Saída: Fiesta
3. Modificando atributos:
Para modificar os atributos de uma classe, basta atribuir um novo valor a eles. Podemos fazer isso tanto dentro da classe quanto fora dela. Vejamos um exemplo:



class Retangulo:
def __init__(self, base, altura):
self.base = base
self.altura = altura
def calcular_area(self):
return self.base * self.altura
retangulo1 = Retangulo(5, 3)
print(retangulo1.calcular_area()) # Saída: 15
retangulo1.base = 7
retangulo1.altura = 4
print(retangulo1.calcular_area()) # Saída: 28
4. Acessando atributos de classe:
Além dos atributos de instância, uma classe em Python também pode ter atributos de classe. Os atributos de classe são compartilhados por todas as instâncias da classe. Podemos acessar esses atributos tanto dentro quanto fora da classe, usando a notação nome_da_classe.nome_do_atributo
. Vejamos um exemplo:
class Pessoa:
contador = 0
def __init__(self, nome):
self.nome = nome
Pessoa.contador += 1
def imprimir_contador(self):
print(f"Total de pessoas: {Pessoa.contador}")
pessoa1 = Pessoa("João")
pessoa2 = Pessoa("Maria")
pessoa1.imprimir_contador() # Saída: Total de pessoas: 2
pessoa2.imprimir_contador() # Saída: Total de pessoas: 2
Nesse exemplo, a classe “Pessoa” possui o atributo de classe “contador”, que é incrementado a cada nova instância da classe. Podemos acessar esse atributo tanto dentro dos métodos da classe quanto fora dela.
Exemplos práticos de classes em Python com atributos
Agora que entendemos como criar e manipular atributos de classe em Python, vamos ver alguns exemplos práticos de classes com atributos:
1. Classe “Livro”:
class Livro:
def __init__(self, titulo, autor, ano):
self.titulo = titulo
self.autor = autor
self.ano = ano
def imprimir_detalhes(self):
print(f"Título: {self.titulo}")
print(f"Autor: {self.autor}")
print(f"Ano: {self.ano}")
livro1 = Livro("Harry Potter", "J.K. Rowling", 1997)
livro1.imprimir_detalhes()
2. Classe “Aluno”:
class Aluno:
def __init__(self, nome, matricula, curso):
self.nome = nome
self.matricula = matricula
self.curso = curso
def imprimir_informacoes(self):
print(f"Nome: {self.nome}")
print(f"Matrícula: {self.matricula}")
print(f"Curso: {self.curso}")
aluno1 = Aluno("João", 12345, "Engenharia")
aluno1.imprimir_informacoes()
Esses exemplos ilustram como as classes em Python com atributos podem ser úteis para modelar objetos do mundo real em programas de computador. As classes nos permitem definir características e comportamentos específicos para esses objetos, tornando nosso código mais organizado, reutilizável e fácil de entender.
Em resumo, as classes em Python com atributos são essenciais para a programação orientada a objetos. Elas nos permitem criar objetos personalizados, definindo suas características e comportamentos através de atributos e métodos. Através do acesso e modificação desses atributos, podemos criar programas mais flexíveis e poderosos.
A Awari é a melhor plataforma para aprender sobre ciência de dados no Brasil.
Aqui você encontra cursos com aulas ao vivo, mentorias individuais com os melhores profissionais do mercado e suporte de carreira personalizado para dar seu próximo passo profissional e aprender habilidades como Data Science, Data Analytics, Machine Learning e mais.
Já pensou em aprender de maneira individualizada com profissionais que atuam em empresas como Nubank, Amazon e Google? Clique aqui para se inscrever na Awari e começar a construir agora mesmo o próximo capítulo da sua carreira em dados.


