LA – Python – Aula 09A – Funções

Funções

Para trabalhar com funções em Python, devemos utilizar o comando def. O diferencial de uma função em Python é que nativamente, a mesma pode retornar mais de um valor e toda a passagem de parametros é por referencia;

Funções com retorno

A sintaxe de uma funcao é:

def nome_da_funcao (argumento1, argumento2, ..., argumentoN):
    corpo da funcao
    ...
    return valor1, valor2, ..., valorN

Exemplo:

def quadrado (numero):
    return numero * numero

Chamada da função

def quadrado (numero):
    return numero * numero

def main():
    print(quadrado(4))

if __name__ == '__main__':
    main()

Funções sem retorno

Da mesma forma que temos em outras linguagens de programacao, temos funções não necessitam de retorno.

def imprimir_nome(nome):
    print("Hello",nome)

def main():
    imprimir_nome('Ana')

if __name__ == '__main__':
    main()

Obs: Dentro da funcao imprimir_nome, tambem poderiamos colocar o comando return na ultima linha da funcao.

Funções com mais de um retorno

Para fazermos uma funcao com mais de um retorno, precisamos fazer com que dois valores recebem os retornos da funcao:

def dobro_triplo(numero):
    dobro = numero * 2
    triplo = numero * 3
    return dobro, triplo

def main():
    valor1, valor2 = dobro_triplo(2)
    print('\nO dobro:', valor1)
    print('\nO triplo:', valor2)
    
if __name__ == '__main__':
    main()

Passando parametros do tipo lista

Além dos tradicionais tipos de dados, há a possibilidade de se passar uma lista nos argumentos de uma função:

#passando uma lista como parametro

def dobraLista(lista):
    posicao = 0
    while posicao < len(lista):
        lista[posicao] *= 2
        posicao += 1


listaValores = [1, 2, 3, 4, 5, 6]
dobraLista(listaValores)
print('Valores da lista dobrada: ',listaValores)

 

Empacotamento de paramentros

Há casos em que não sabemos quantos paramentros serão passados para a função. Até o momento, colocávamos a quantidade de parametros nos argumentos da função, porém existem o conceito de empacotamento de parametros, a qual não precisamos dizer ao Python quantos argumentos serão passados para a função.

Por exemplo, podemos escrever as funções:

def somainteiros(* inteiros):
    for valor in inteiros:
        print(f'{valor} ', end='')
    print('')

def containteiros (* inteiros):
    tamanho = len(inteiros)
    print(f'A quantidade de inteiros recebidos sao {tamanho}')

#chamada das funcoes
somainteiros(5, 4)
somainteiros(6, 2, 2)
somainteiros(5, 3, 2, 1)

containteiros(3, 1)
containteiros(3, 1, 5, 6, 8, 4)
Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s