Variáveis locais e globais
Variáveis que são introduzidas no programa principal são chamadas globais (ou compartilhadas).
Você pode acessar variáveis globais de qualquer sub-rotina.
Muitas vezes é necessário introduzir variáveis adicionais que serão utilizadas apenas na sub-rotina. Tais variáveis são chamadas
locais (ou locais). Você pode trabalhar com eles somente dentro da sub-rotina na qual eles são criados. O resto das rotinas não "sabem" nada sobre elas.
Assim, é possível limitar o escopo (scope) de uma variável apenas à sub-rotina onde ela é realmente necessária. Na programação, essa técnica é chamada de
encapsulamento - ocultar a variável de ser alterada de fora.
Analise três programas:
Descrição |
Programa |
1) Neste programa, a variável i é local. Se não houver variável i no programa principal, obteremos uma mensagem de erro. E se houver tal variável (então é uma variável global), então seu valor é exibido na tela. |
def teste():
imprimir(i)
|
2) Aqui, mesmo que exista uma variável global i , uma nova variável local i será criada com valor 2, e 2 aparecerá na tela. |
def teste():
eu = 2
imprimir(i)
|
3) Neste programa, existe uma variável global i com valor 15. Seu valor pode ser alterado dentro da sub-rotina, para isso é necessário declarar explicitamente que ela é global ( use o comando global ).
O procedimento funcionará com a variável global i e será atribuído a ela um novo valor de 2. O valor 2 é exibido. |
def teste():
global i
eu = 2
# programa principal
eu = 15
imprimir(i)
|