Incorporamento di IPython

La funzione embed () del modulo IPython rende possibile incorporare IPython nello spazio dei nomi dei codici Python. In questo modo puoi sfruttare le funzionalità di IPython come l'introspezione degli oggetti e il completamento con tabulazione, nell'ambiente Python predefinito.

Gli oggetti Python presenti nello spazio dei nomi globale prima dell'incorporamento saranno disponibili per IPython.

Se vengono formati nuovi oggetti mentre si è in IPython o gli oggetti precedenti vengono modificati, saranno automaticamente disponibili per l'ambiente predefinito dopo l'uscita da IPython. La shell IPython incorporata non modifica lo stato del codice o degli oggetti precedenti.

Tuttavia, se IPython è incorporato nello spazio dei nomi locale come all'interno di una funzione, gli oggetti al suo interno non saranno disponibili una volta chiuso. Qui abbiamo definito una funzione add (). All'interno di add () invochiamo IPython e dichiariamo una variabile. Se proviamo ad accedere alla variabile in IPython dopo che è stata chiusa, verrà sollevata l'eccezione NameError.