| Home  | Casa  | Hardware  | Networking  | Programmazione  | Software  | Domanda  | Sistemi  |   
Programmazione  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Java Programming

  • Programmazione Javascript

  • PHP /MySQL Programmazione

  • Perl Programming

  • Python Programming

  • rubino Programmazione

  • Nozioni di base di Visual Programming
  •  
    Conoscenza Informatica >> Programmazione >> Python Programming >> Content
    Python funzioni ricorsive
    funzioni ricorsive sono funzioni che si definiscono nella loro definizione . Poiché una funzione ricorsiva chiama se stessa per svolgere il suo compito , può fare i lavori che contengono il lavoro identico su oggetti dati più facili da concettualizzare , progettare e scrivere . Tuttavia, la ricorsione può essere alta intensità di sistema o di finire di sovraccaricare il sistema se la ricorsione non si ferma . Scrittura di funzioni ricorsive in Python è simile ad usare le funzioni ricorsive in altri linguaggi di programmazione , con gli stessi vantaggi e le insidie ​​. Esempio di ricorsione

    funzioni ricorsive si definiscono come parte della loro definizione . Per esempio :

    >>> def fattore ( x ) :

    . . . fattore ( x ) per

    Questa funzione continua a chiamare se stesso fino a quando il sistema non può più contenere la quantità di funzioni chiamate effettuate ( chiamate di funzione risiedono nella memoria come qualsiasi altro dato ) . Tuttavia, questo semplifica il modo a funzioni ricorsive opere concettualmente : Una funzione ( fattore ) chiama se stessa ( fattore ( x ) ), come parte della sua definizione
    Casi Base

    . Una funzione ricorsiva deve avere quello che si potrebbe definire "casi base", o condizioni che raccontano la funzione di fermare la sua ricorsione . Questo potrebbe essere qualsiasi condizione che la funzione potrebbe aver soddisfatto come parte del suo funzionamento . Come un esempio classico , la funzione fattoriale trova il fattoriale di un numero n ( n! , o n * n- 1 * n-2 ... 0 ) . Quindi il fattoriale di 3 potrebbe calcolare a 3 * 2 * 1 = 6 . Un programmatore può utilizzare il numero 0 come caso base di questa funzione :

    >>> if x == 0 :

    . . . ritorno 1
    ricorsione

    Se la funzione fattoriale ha ora un caso base ( x == 0 ) , allora ricorsione si ferma a questa condizione. Quindi , sarebbe solo una questione di usare la ricorsione per eseguire l'operazione fattoriale :

    >>> altro :

    . . . return x * fattore (x - 1 ) per

    Se x non è uguale a 0 , allora la ricorsione avrà inizio /continuare. L'istruzione return chiamerà "fattore " e attendere . Ogni nuova chiamata di funzione farà lo stesso , chiamando e in attesa fino a quando l'ultima chiamata di funzione ( quando x == 0 ) restituisce 1 . Poi , ogni chiamata precedente si concluderà l'istruzione return ( moltiplicare il valore restituito da "fattore " di x ), fino a quando il fattoriale viene restituito .
    Python ricorsione

    ricorsione in qualsiasi lingua può finire in un ciclo infinito : Cioè , una struttura ricorsiva che non finisce mai fino a quando il sistema si blocca a causa di mancanza di risorse. Python ferma questa ricorsione "infinito" a 1.000 chiamate ( in modo che una funzione può richiamare se stesso in un caso - lunga catena ricorsiva 1.000 prima di Python si interrompe il processo ) . Il programmatore può modificare questo valore attraverso le librerie di sistema , come in questo esempio :

    >>> import sys >>>

    sys.setrecursionlimit (2000 ) per

    Tuttavia, a quel punto i programmatori potrebbero chiedersi se la ricorsione è la migliore soluzione per il problema.

    Previous :

    next :
      Articoli Correlati
    ·Come Swap 8 - Byte Big Endian in Python 
    ·Come fare un Keylogger in Python 
    ·Come eseguire il debug Riavvia Python 
    ·Come aprire Linux Python XRCed 
    ·Esercitazione di manutenzione Software 
    ·Come utilizzare Python Math.log Con Base 10 
    ·Procedura: Regex per analizzare XML 
    ·Python Lambda di lista 
    ·Come fare nomi globali Python 
    ·Come fare Loops in Python 
      Articoli in evidenza
    ·Che cosa sono i file di simboli DNN ? 
    ·Come Non Log In XP con una password 
    ·Come usare un VB di chiamata Accedere a una query 
    ·Come calcolare fattori primi di un numero intero in Per…
    ·Vero VS False Programmazione Economico 
    ·Come utilizzare PEAR MDB2 
    ·Come leggere una scheda perforata 
    ·Come rimuovere una riga vuota in un file di testo SQL 
    ·Come rimuovere un array valore dell'elemento in PHP 
    ·Come creare uno script Data 
    Copyright © Conoscenza Informatica http://it.wingwit.com