Qual é a diferença de escrever código em uma classe e em def __init __ (self) em Python? [duplicado]
Duplicata Possível:
Variáveis dentro e fora de uma função __init __ () de classe
Eu entendo que quando uma classe é chamada, ela executará o código__init__
antes de qualquer coisa. Eu ainda não vejo a diferença entre isso, e escrevendo o código diretamente sob a classe.
Por exemplo:
class main():
x = 1
def disp(self):
print self.x
class main():
def __init__(self):
self.x = 1
def disp(self):
print self.x
Para mim, ambos têm a mesma funcionalidade. (Talvez eu esteja perdendo alguma coisa.) Eu gostaria de saber qual é mais (ahem) pythonic e por quê.