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