Programação  
 
Conhecimento computador >> Programação >> Programação Python >> 
Funções recursivas Python
funções recursivas são funções que se chamam em sua definição . Porque uma função recursiva chama sobre si mesmo para realizar a sua tarefa, ele pode fazer os trabalhos que contêm trabalho idêntico em vários objetos de dados mais fácil de conceituar , planejar e escrever . No entanto , a recursão pode ser intensivo de sistema ou acabam sobrecarregando o sistema se a recursão não pára. Escrevendo funções recursivas em Python é semelhante ao uso de funções recursivas em outras linguagens de programação , com os mesmos benefícios e armadilhas. Amostra Recursão

funções recursivas se intitulam como parte de sua definição. Por exemplo :

>>> def factor (x) :

. . . factor (x)

Esta função vai continuar a chamar-se até que o sistema não consegue mais segurar a quantidade de chamadas de função feitas ( chamadas de função residem na memória como quaisquer outros dados ) . No entanto, isso simplifica como funciona um recursivas trabalha conceitualmente : A função ( fator ) chama a si mesmo ( factor (x) ), como parte de sua definição

casos base

. Uma função recursiva deve ter o que poderia ser chamado de "casos -base ", ou condições que indicam a função para impedir a sua recorrência . Este poderia ser qualquer condição que a função poderia ter satisfeito , como parte de sua operação. Como exemplo clássico , a função fatorial encontra o fatorial de um número n ( n! , ou n * n-1 * n- 2 ... 0). Então, o fatorial de 3 calcularia a 3 * 2 * 1 = 6. Um programador pode usar o número 0 como o caso base dessa função :

>>> if x == 0 :

. . . retornar 1
recursão

Se a função fatorial tem agora um caso base ( x == 0), então a recursão vai parar neste estado. Assim , seria apenas uma questão de usar recursão para executar a operação fatorial :

>>> mais:

. . . voltar x fator * ( x -1)

Se x não é igual a 0, então a recursão vai começar /continuar. A instrução return chamará " fator " e aguarde . Cada nova chamada função irá fazer o mesmo , pedindo e esperando até a última chamada de função ( quando x == 0) retorna 1 . Em seguida, cada chamada anterior vai terminar a instrução de retorno ( multiplicar o valor retornado do " fator " de x ) até que o fatorial é retornado.
Python recursão

recursão em qualquer língua pode acabar em um loop infinito , ou seja, uma estrutura recursiva que nunca termina até que o sistema pára -lo devido à falta de recursos . Python pára esta recursão " infinito " em 1.000 chamadas (para uma função pode chamar a si mesma em uma cadeia recursiva 1.000 exemplo , muito antes Python interrompe o processo ) . O programador pode alterar esse valor através das bibliotecas do sistema, como neste exemplo:

>>> import sys

>>> sys.setrecursionlimit (2000)

No entanto , nesse ponto os programadores podem se perguntar se a recursividade é a melhor solução para o problema.

Anterior :

Próximo : No
  Os artigos relacionados
·A Função Method & Classe em Python 
·Como fazer um array vazio em Python 
·Como criar um programa Python a aceitar até mesmo núm…
·Como espelhar uma verticalmente fotográfica e horizont…
·Como obter o Modo de uma lista em Python 
·Que linguagem é o Python Interpreter codificado em 
·Função Python Propriedade 
·Como levantar um aviso em Python 
·Como carregar um script Python em um Shell IDLE 
·Como fazer um jogo em Alta Baixa Python 
  Artigos em destaque
·Como usar o cifrão em uma String em PHP 
·Como ler a entrada de teclado USB em Linux 
·Como começar Teclas em C + + 
·Como executar um aplicativo Clojure na JVM e CLR 
·Posso colocar várias âncoras em HTML 
·Como pausar um Processo MySQL Query 
·Como editar uma Carta em Acajoom 
·Como ler arquivos PDF em PHP 
·Como verificar Formato EPS em Java 
·Funções Java Byte 
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados