variáveis de classe são compartilhadas em todas as instâncias em python? [duplicado]
Esta questão já tem uma resposta aqui:
Como evitar que dados de classe sejam compartilhados entre instâncias? 8 respostasEu comecei a codificar em python há uma semana, é meu erro eu comecei a codificar usando oops, classes e objetos que em breve. Eu assumi que minha proficiência em C ++ ajudaria ... Eu fui mordido pelo seguinte código
class A:
var=0
list=[]
def __init__(self):
pass
Aqui para minha surpresa, var e list são uma variável global, é compartilhado em todas as instâncias que parece .... O que eu pensei foi que era diferente em todas as instâncias ..... Levei meio dia para descobrir isso ... Não faz nem mesmo o menor sentido, que uma variável pode ser acessada apenas por um objeto de classe, mas é compartilhada por todas as instâncias ....... Apenas Curioso, existe uma razão por trás disso ??? ??