ExpertiDict

Python · Essencial · Inglês · Técnico

self

/sɛlf/substantivo

Nome convencional do primeiro parâmetro dos métodos de instância, que recebe o próprio objeto. O Python o passa automaticamente na chamada, mas você precisa declará-lo.

Onde usar

É por self que se acessam atributos e outros métodos do objeto, como self.nome. Esquecer o self na definição gera o erro 'takes 0 positional arguments but 1 was given'.

Em código

class Conta:
  def __init__(self, saldo):
    self.saldo = saldo

  def depositar(self, valor):
    self.saldo += valor

Exemplos

You forgot self in the method signature.

Você esqueceu o self na assinatura do método.

Store it in self so other methods can use it.

Guarde em self para os outros métodos poderem usar.

Cuidado

O self não é palavra reservada, só convenção, mas usar outro nome atrapalha a leitura de qualquer pessoa do time.

Veja também

Todos os termos de Python