HOWTO · Python

Passagem por referência em Python

Este tutorial demonstra como passar um argumento por referência em Python.

Nesta página

Neste guia, demonstraremos o que você precisa saber sobre passagem por referência. Incluímos um programa de amostra abaixo, que você pode seguir para compreender melhor esta função.

A definição da passagem por referência na função Python

Existem muitas maneiras de definir um argumento em uma função em Python; um desses processos é a passagem por referência. A palavra Pass aqui significa passar ou dar um argumento para uma função. Então, por referência significa que o argumento passado para uma função é basicamente referido como uma variável existente em vez de uma cópia separada dessa variável. Neste método de definir um argumento em uma função, a variável a que se refere é afetada principalmente por qualquer operação executada.

Exemplo de passagem por referência em Python

def fun(x):
    x.append("Sam")
    print("While calling the function:", x)


x = ["Hello"]
print("Before calling the function:", x)
fun(x)
print("After calling the function:", x)

Resultado:

Before calling the function: ['Hello']
While calling the function: ['Hello', 'Sam']
After calling the function: ['Hello', 'Sam']

Explicação

No exemplo acima, uma função é primeiro definida com uma variável x. Aqui, o método append é usado com x para adicionar a um nome de elemento sam. Depois disso, uma lista é feita usando o elemento x no qual existe apenas um elemento, ou seja, hello. Ao imprimir a lista, a função inicialmente definida é chamada junto com seu argumento x. Depois de chamar a função, observe que o elemento anexado na própria função foi adicionado à lista x.

Este processo mostra como funciona a passagem por referência. A função sempre afeta os objetos mutáveis (objetos que podem mudar seu valor ou estado) armazenados em uma variável usada como o argumento da função.