CodeGym /Cursos /Python SELF PT /Retornando valor

Retornando valor

Python SELF PT
Nível 6 , Lição 2
Disponível

8.1 Operador return

Em Python, o operador return desempenha um papel central nas funções, pois é com ele que uma função pode retornar seu valor. Entender seu uso é importante para o desenvolvimento eficaz de software.

O operador return encerra a execução de uma função e "retorna" o resultado para o código que a chamou. Se uma função deve fornecer um resultado que será usado posteriormente, usa-se return.

Retornando valor

As funções podem retornar qualquer tipo de dado, incluindo números, strings, objetos, até mesmo outras funções e None. Exemplo:


def sum(a, b):
    return a + b
        
result = sum(5, 3)
print(result)  # Exibe 8

O resultado da soma a + b pode ser atribuído à variável result.

Retornando múltiplos valores

Python permite retornar múltiplos valores de uma função usando tuplas:


def get_user():
    name = "Ivan"
    age = 25
    return name, age
        
user_name, user_age = get_user()
print(user_name, user_age)  # Exibe Ivan 25

Usando return para encerrar uma função

O operador return também pode ser usado para terminar imediatamente uma função, incluindo loops ou blocos condicionais dentro da função:


def check_password(pswd):
    if len(pswd) < 8:
        return "Senha muito curta"
    return "Senha aceita"

return sem valor

Se return for usado sem um valor ou omitido completamente, a função retorna None:


def print_message(text):
    print(text)
    return
        
result = print_message("Oi")
print(result)  # Exibe None

O operador return é uma ferramenta poderosa em Python, fornecendo flexibilidade no controle do fluxo de execução do programa. Ele permite que funções não apenas retornem valores para uso futuro, mas também controlem a lógica de execução, o que torna o código mais claro e fácil de entender.

8.2 Operador pass

Em Python existe um operador especial — pass, que não faz nada. O operador pass é usado como um marcador em blocos de código onde sintaticamente é necessário um conteúdo, mas funcionalmente ele ainda não está definido (deve haver algum código, mas ainda não se decidiu qual).

Isso é especialmente útil em casos onde você está trabalhando em um grande projeto e deseja estruturar o programa, sem permitir que ele execute nenhuma operação. Abaixo estão alguns exemplos do uso do pass.

Nas definições de funções:


def my_function():
    pass

Aqui, pass é usado para definir uma função que ainda não tem implementação.

Em loops e condições:


for item in my_list:
    pass

Se for necessário criar um loop, mas não se deseja executar nenhuma ação no corpo do mesmo.

Em classes:

A definição de uma classe sem métodos e atributos, para reservar o nome e a estrutura da classe para uso futuro.

O operador pass é frequentemente usado durante o processo de desenvolvimento e testes, quando a estrutura do programa já está clara, mas os detalhes da implementação de componentes individuais ainda não estão definidos. Isso permite ao programador organizar o código e adicionar funcionalidade gradualmente sem interromper o funcionamento do aplicativo como um todo.

8.3 Retornando uma função

Em Python, a capacidade de uma função retornar outra função é uma poderosa ferramenta, graças ao suporte de closures* e funções de primeira classe. Essa característica da linguagem permite desenvolver programas flexíveis e expressivos, usando conceitos como decorators* e fábricas de funções*.

Em Python, funções são objetos, o que significa que podem ser atribuídas a variáveis, passadas para outras funções como argumentos ou retornadas por elas como resultados. Essa capacidade torna as funções uma ferramenta poderosa para criar um código modular e de fácil teste.

Vamos, por exemplo, criar uma função que irá gerar funções para elevar um número a uma determinada potência. Uma função vai elevar ao quadrado, outra ao cubo e assim por diante. Veja como esse código pode ser:


def power(exponent):
    def inner(base):
        return base ** exponent
    return inner
        
square = power(2)
print(square(3))  # Exibe 9
        
cube = power(3)
print(cube(3))  # Exibe 27

Observe que a função power não chama a função inner. Em vez disso, dentro da função power, é declarada a função inner com o parâmetro base. Mas a função inner não é apenas declarada, ela usa o parâmetro exponent dentro dela.

Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION