2012-01-30 16 views

risposta

11

Se non diversamente specificato, ciascun notebook contribuisce al contesto Global`. Quindi, per chiamare una funzione nel notebook b: prima assicurati che la definizione sia caricata nel contesto (es. Seleziona la cella con la definizione e premi shift - inserisci), e quindi la definizione è disponibile per notebook b e qualsiasi altro blocco note aperto.

Per evitare questo comportamento, è possibile modificare Notebook's Default Context dal menu Evaluation. Vi sono quattro opzioni: Global` (impostazione predefinita), un altro contesto specificato, univoco per il blocco note, univoco per il gruppo di celle. Per il gruppo di celle, ciascuna cella di input prende il contesto del gruppo di chiusura più vicino, ad es. una sottosezione, per esempio, e quei raggruppamenti hanno contesti unici.

+0

Grazie! Ma cosa succede se non ho aperto l'altro notebook e voglio solo richiamare una funzione precedente che viene salvata su un altro notebook? – John

+1

@John, non direttamente, no. È possibile creare un [pacchetto] (http://reference.wolfram.com/mathematica/guide/StandardExtraPackages.html) che viene caricato su richiesta, ma è ancora caricato. Consiglierei di seguire il percorso del pacchetto, me stesso. – rcollyer

+0

Questo è un peccato. Guarderò nei pacchetti! Grazie! – John

Problemi correlati