Passagem por referência em Python

Lakshay Kapoor 30 janeiro 2023
  1. A definição da passagem por referência na função Python
  2. Exemplo de passagem por referência em Python
  3. Explicação
Passagem por referência em Python

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.

Lakshay Kapoor avatar Lakshay Kapoor avatar

Lakshay Kapoor is a final year B.Tech Computer Science student at Amity University Noida. He is familiar with programming languages and their real-world applications (Python/R/C++). Deeply interested in the area of Data Sciences and Machine Learning.

LinkedIn

Artigo relacionado - Python Function