##// END OF EJS Templates
* IPython/iplib.py (runsource): remove self.code_to_run_src attribute. I...
* IPython/iplib.py (runsource): remove self.code_to_run_src attribute. I realized this is nothing more than '\n'.join(self.buffer), and having the same data in two different places is just asking for synchronization bugs. This may impact people who have custom exception handlers, so I need to warn ipython-dev about it (F. Mantegazza may use them). * Fix http://www.scipy.net/roundup/ipython/issue38

File last commit:

r0:6f629fcc
r10:ec9735d7
Show More
numeric_formats.py
41 lines | 1.2 KiB | text/x-python | PythonLexer
# -*- coding: utf-8 -*-
"""
Extension for printing Numeric Arrays in flexible ways.
"""
def num_display(self,arg):
"""Display method for printing which treats Numeric arrays specially.
"""
# Non-numpy variables are printed using the system default
if type(arg) != ArrayType:
self._display(arg)
return
# Otherwise, we do work.
format = __IPYTHON__.runtime_rc.numarray_print_format
print 'NumPy array, format:',format
# Here is where all the printing logic needs to be implemented
print arg # nothing yet :)
def magic_format(self,parameter_s=''):
"""Specifies format of numerical output.
This command is similar to Ocave's format command.
"""
valid_formats = ['long','short']
if parameter_s in valid_formats:
self.runtime_rc.numarray_print_format = parameter_s
print 'Numeric output format is now:',parameter_s
else:
print 'Invalid format:',parameter_s
print 'Valid formats:',valid_formats
# setup default format
__IPYTHON__.runtime_rc.numarray_print_format = 'long'
# Bind our new functions to the interpreter
__IPYTHON__.__class__.magic_format = magic_format
__IPYTHON__.hooks.display = num_display