segunda-feira, 19 de junho de 2017

Python Classes

Chegando algo interessante, as classes, aqui se separa o programador criança do programador.
Muitos desistem de programar depois da chegada das classes, mas em Python não é algo tão desesperador.

Podemos dizer que classe a princípio serve para economizar código. Imagine que você vai apresentar o nome e sobrenome de uma pessoa.
nome= 'Andre'
sobrenome ="da Silva"
print nome + " " + sobrenome
Em python tudo é lindo. Ai você pensa em apresentar outro nome.
nome= 'Andre'
sobrenome ="da Silva"
print nome + " " + sobrenome
nome= 'Carlos'
sobrenome ="de ALmeida"
print nome + " " + sobrenome
Bom, ai você repara que copiou duas vezes o print, então alguem pensando nisto, deu a ideia de usar classes para reutilizar os códigos, além de começarmos a entrar em POO.
class Nome():
    def __init__(self,nome,sobrenome):
        self.nome=nome
        self.sobrenome=sobrenome

    def get(self):
        return  self.nome + " " + self.sobrenome

a = Nome('Andre',"da Silva")
print a.get()
Temos a classe, o objeto, os atributos e o retorno. A classe Nome, recebe no __init__ os atributos: nome e sobrenome. O método get pega o atributo nome e sobrenome e o retorna. O objeto a, herda a classe Nome. Quanta coisa heim.

segunda-feira, 6 de junho de 2016

Funcao - parte II

Uma função possui valores dentro da função, fora dela, os valores não existem.

Exemplo:

a=2
def func():
    a=3
    print a

func() #imprime o a dentro da função
print a #imprime o a fora da função

>>>
3
2
>>>

Percebe-se que a variável a possui dois valores, um dentro da função e outro fora da função.

Pode-se usar o a tanto dentro como fora da função com o mesmo valor?

Existe algumas maneiras para fazer isso, uma que normalmente faço é o seguinte:


a=2
def func():
    global a
    a=3
    print a

func()
print a

>>>
3
3
>>>

acrescento o global a, fazendo o valor de a, ser único no código.

abs