2010-11-25 9 views
7

C'è un modo per far sì che iPython faccia automaticamente eco al risultato di un estratto conto?ipython: eco automaticamente il risultato della dichiarazione di assegnazione?

Ad esempio, in MATLAB, terminando un'istruzione di assegnazione senza punto e virgola viene stampato il risultato dell'assegnazione, e mettendo un punto e virgola alla fine dell'istruzione si sopprime qualsiasi output.

>> b=1+2 

b = 

    3 

>> b=1+2; 
>> 

Voglio essere in grado di fare qualcosa di simile in iPython. Tuttavia, attualmente devo utilizzare due dichiarazioni separate se voglio vedere il risultato dell'assegnazione:

In [32]: b=1+2 

In [33]: b 
Out[33]: 3 

Grazie in anticipo.
Misha

+0

Commento tardivo, ma la sua è una delle cose che mi manca di più da Matlab in IPython. Attualmente è disponibile una [richiesta di funzionalità] (https://github.com/jupyter/notebook/issues/93) per aggiungere qualcosa di simile ai taccuini IPython, ma non è ancora stato implementato nulla. –

risposta

0

assegnazione è puramente una dichiarazione in Python, in modo che avrebbe dovuto compilare il codice, a piedi l'AST, trovare l'assegnazione, e quindi stampare la variabile del repr() dopo l'esecuzione.

+0

Cos'è l'AST? – hobs

+0

Quindi la shell iPython o Python deve fare tutto questo e l'unica soluzione è inviare una richiesta di funzionalità al progetto cpython o ipython? – hobs

+0

@hobs: [Abstract syntax tree.] (Http://en.wikipedia.org/wiki/Abstract_syntax_tree) Il materiale per gestirlo è in ['ast'] (http://docs.python.org/library /ast.html). –

Problemi correlati