Sobes.tech
Junior — Middle

Como é que a transferência de variáveis é feita na linguagem de programação Python?

sobes.tech IA

Resposta da IA

Em Python, a passagem de variáveis para funções é feita por referência ao objeto (call by object reference). Isto significa que, ao chamar uma função, é passada uma referência ao objeto, não uma cópia do valor.

Se o objeto for mutável (por exemplo, uma lista, um dicionário), as alterações dentro da função serão visíveis também fora dela. Se o objeto for imutável (por exemplo, números, strings, tuplos), tentar modificá-lo dentro da função resultará na criação de um novo objeto, e o objeto externo permanecerá inalterado.

Exemplo:

def modify_list(lst):
    lst.append(4)  # modifica o objeto

def modify_int(x):
    x += 1  # cria um novo objeto

my_list = [1, 2, 3]
modify_list(my_list)
print(my_list)  # [1, 2, 3, 4]

my_int = 10
modify_int(my_int)
print(my_int)  # 10