1
resposta

Escopo de uma variável

O comando print mostrar somente a variável na tela, ela usa o valor que está na memoria e mostra na tela, não fazendo nenhuma gravação ou deixando usar ela para um outro comando.

1 resposta

Olá, Marcelo! Como vai?

O comando print realmente só exibe o valor de uma variável na tela e não altera ou armazena esse valor em nenhum lugar.

Ele é usado apenas para mostrar informações ao usuário. Sobre o escopo das variáveis, é importante entender que ele define onde uma variável pode ser acessada no seu código. Em Python, temos principalmente dois tipos de escopo: global e local.

  • Escopo Global: Uma variável definida fora de qualquer função é uma variável global. Ela pode ser acessada por qualquer parte do código, inclusive dentro das funções.

  • Escopo Local: Uma variável definida dentro de uma função é uma variável local. Ela só pode ser acessada dentro dessa função.

No exemplo que você mencionou, a variável x está no escopo global, então pode ser usada dentro da função soma(). Já a variável y está no escopo local da função soma(), então só pode ser usada dentro dessa função. Se você tentar acessar y fora da função, receberá um erro NameError, porque y não existe fora do escopo da função soma().

Se você precisar usar o valor de y fora da função, você pode:

  1. Tornar y uma variável global, mas isso deve ser feito com cuidado, pois pode tornar o código mais difícil de entender e manter.
  2. Retornar o valor de y da função e atribuí-lo a uma variável no escopo global. Por exemplo:
x = 7

def soma():
    y = 9
    print(x + y)
    return y

y_global = soma()
print(x + y_global)

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!