[IPython-User] Pretty print as default print function

Thomas Kluyver takowl@gmail....
Sat Nov 10 02:17:51 CST 2012


The only thing I can think of is to hack an ast transformation into %run,
to turn print statements into calls to a function you've defined.

The good news is that a lot of scientific python packages now support
python 3.

Thanks,
Thomas
On Nov 10, 2012 1:10 AM, "Gökhan Sever" <gokhansever@gmail.com> wrote:

> Thanks for the reply Thomas.
>
> I still use Python 2.7, along with all of the scientific Python stack.
>
> Do you think is there a simple way to modify IPython's "run" command so
> that output's pretty printed just like IPython shell?
>
>
> On Fri, Nov 9, 2012 at 2:28 AM, Thomas Kluyver <takowl@gmail.com> wrote:
>
>> In python 3, you can replace the builtin print function. I don't know of
>> any way to modify the behaviour of print statements in python 2.
>>
>> Thomas
>> On Nov 9, 2012 6:59 AM, "Gökhan Sever" <gokhansever@gmail.com> wrote:
>>
>>> Hello,
>>>
>>> I would like to be able print NumPy arrays matching the IDL's array
>>> print outout. For instance:
>>>
>>> IDL> print, findgen(5)
>>>       0.00000      1.00000      2.00000      3.00000      4.00000
>>> IDL> print, dindgen(5)
>>>        0.0000000       1.0000000       2.0000000       3.0000000
>>> 4.0000000
>>>        0.0000000       1.0000000       2.0000000       3.0000000
>>> 4.0000000
>>>
>>>
>>> I1 np.arange(5, dtype='float64')
>>> O1        0.0000000       1.0000000       2.0000000       3.0000000
>>>   4.0000000
>>>
>>> I2 np.arange(5, dtype='float32')
>>> O2       0.00000      1.00000      2.00000      3.00000      4.00000
>>>
>>> Ignoring O1 and O2 lines, outputs (formatting) are matching. I achieved
>>> this by defining some custom pprint formatters in the IPy config file.
>>>
>>> However, this is only valid within IPython while just typing array
>>> names. For instance, running these lines revert the printing settings back
>>> to normal.
>>>
>>> Is there a way to make this type of customized printing default for
>>> executing a file via Python? ie., can we replace python's print statement
>>> with pprint?
>>>
>>> If not, should I edit numpy/core/arrayprint.py and use a pythonrc file
>>> to achieve the effect?
>>>
>>> I am also interested in custom printing other data types than nd.arrays.
>>>
>>> Thanks.
>>>
>>> --
>>> Gökhan
>>>
>>> _______________________________________________
>>> IPython-User mailing list
>>> IPython-User@scipy.org
>>> http://mail.scipy.org/mailman/listinfo/ipython-user
>>>
>>>
>> _______________________________________________
>> IPython-User mailing list
>> IPython-User@scipy.org
>> http://mail.scipy.org/mailman/listinfo/ipython-user
>>
>>
>
>
> --
> Gökhan
>
> _______________________________________________
> IPython-User mailing list
> IPython-User@scipy.org
> http://mail.scipy.org/mailman/listinfo/ipython-user
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/ipython-user/attachments/20121110/21534cdf/attachment.html 


More information about the IPython-User mailing list