1+ from builtins import classmethod
2+
3+
14class Pessoa :
5+ olhos = 2
26 def __init__ (self ,* filhos , nome = None , idade = 27 ): # atributos
37 self .nome = nome
48 self .idade = idade
@@ -7,24 +11,35 @@ def __init__(self,*filhos, nome=None, idade=27): # atributos
711
812
913 def cumprimentar (self ):
10- return f'Olá Mundo { self .nome } ' # se verificar o id de self é o mesmo do p!
11-
14+ return f'Olá Mundo { self .nome } ' # se verificar o id de self é o mesmo do p!
15+
16+ @staticmethod
17+ def metodo_estatico ():
18+ return 42
19+ @classmethod
20+ def nomes_e_atributos_de_classes (cls ):
21+ return f'{ cls } , olhos { cls .olhos } , '
1222if __name__ == '__main__' :
13- daniele = Pessoa ('livia' ,nome = 'Daniele' ) # chama a classe pessoas mandando a str Teste para nome
14- michel = Pessoa (daniele , nome = 'Michel' )# daniele vai para filhos
15- for i in michel .lfi : # for chama michel.lfi que contem daniele e toca pra i
16- print (i .nome ) #nesse momento i contem daniele e pede pra imprimir daniele.nome
23+ daniele = Pessoa ('livia' ,nome = 'Daniele' ) # chama a classe pessoas mandando a str Teste para nome
24+ michel = Pessoa (daniele , nome = 'Michel' ) # daniele vai para filhos
25+ for i in michel .lfi : # for chama michel.lfi que contem daniele e toca pra i
26+ print (i .nome ) #nesse momento i contem daniele e pede pra imprimir daniele.nome
1727
1828 print (daniele .idade , daniele .nome , daniele .lfi [0 ])
1929 print (f'o nome é { michel .nome } o sua idade é { michel .idade } anos ' )
2030 daniele .sobrenome = 'Stein'
2131
22- print (daniele .sobrenome ) # adiciona um atributo que nao esta em __init__
32+ print (daniele .sobrenome ) # adiciona um atributo que nao esta em __init__
2333 michel .sobrenome = 'Santos'
2434 print (michel .sobrenome )
2535 del michel .sobrenome
26- # del michel.sobrenome apaga um atributo
27- print (daniele .__dict__ ) # mostra todos atributos de daniele
36+ print (f' O id:{ id (michel )} ' ,michel .olhos ,f'id de ohos michel{ michel .olhos } ' )
37+ print (f' O id:{ id (daniele )} ' ,daniele .olhos ,f'id de ohos michel{ daniele .olhos } ' )
38+ print (michel .olhos )
39+ print (Pessoa .olhos )
40+ # del michel.sobrenome apaga um atributo
41+ print (daniele .__dict__ ) # mostra todos atributos de daniele
2842 print (michel .__dict__ )
29-
43+ print (Pessoa .metodo_estatico (), michel .metodo_estatico ()) #posso chamar direto da classe ou do objeto da classe
44+ print (Pessoa .nomes_e_atributos_de_classes (), michel .nomes_e_atributos_de_classes ()) #posso chamar direto da classe ou do objeto da classe
3045
0 commit comments