A linguagem de programação Python , como muitas linguagens de programação , usa funções para conceituar um paradigma de codificação modular. Isto significa que os programadores podem escrever funções que executam tarefas distintas , eliminando a sobreposição de funcionalidade e tornando a manutenção mais fácil. No entanto, o uso de funções em conjunto com um outro pode apresentar problemas para os programadores incautos , como problemas relacionados ao escopo de variáveis e acesso aos dados. Funções
Funções
são simplesmente blocos distintos de código que executam uma determinada tarefa. As funções são definidas com um nome com o qual o programador pode executá-los , e inlcude uma lista de argumentos que representam as variáveis da função receberá como entrada do usuário . Por exemplo, a função a seguir , chamado " duplo", recebe um único argumento (x) e retorna este número multiplicado por dois :
>>> def dobro (x): . . . retornar x * 2
Âmbito
Como funções são blocos distintos de código, todos os dados disponíveis para a função são definidos como da função "escopo ". Scope, neste caso , é limitado para os dados e outras funções definidas dentro da função , e todos os dados definidos dentro de um bloco envolvente de código . Por exemplo, a seguinte função de "duplo" agora contém uma variável adicional no interior. Esta variável só pode ser referenciado dentro da função . Tentando usá-lo fora da função criará um erro:
>>> def dobro (x): . . . y = 0 . . . print y . . . retornar x * 2 >>> dobro (2) 04 >>> print yTraceback erro ...
escopo externo
funções podem variáveis de acesso declarado fora do seu alcance , no entanto. Se uma função é declarada dentro de um programa, ou outra função, que a primeira função pode acessar as variáveis nesse escopo , o chamado " espaço sideral. " Por exemplo, o programa a seguir declara uma variável e, em seguida, declara uma função que imprime a variável . Desde que a variável está no escopo externo da função , a função pode usar a variável :
>>> x = 4 >>> def func ( ) : . . . imprimir x >>> func ( ) 4
Variáveis Renomear
Funções pode usar variáveis em seu escopo externo . No entanto , uma vez que o âmbito exterior da função e do alcance interior da função são duas coisas distintas , variáveis dentro e fora de uma função podem ter o mesmo nome . O exemplo a seguir ilustra isso: O programador declara uma variável , "x" do lado de fora e dentro da função , e dá a cada versão um valor diferente. Imprimindo a variável fora da função retornará um valor diferente do que executar a função :
>>> x = 2 >>> def p (): . . . x = 1 . . . print x >>> print x2 >>> p ( ) 1