Hi Carl,<div><br></div><div>Can you provide a simple working example here?</div><div><br></div><div>Thanks.<br><br><div class="gmail_quote">On Sat, Nov 10, 2012 at 1:34 AM, Carl Smith <span dir="ltr">&lt;<a href="mailto:carl.input@gmail.com" target="_blank">carl.input@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Can you not redirect stdout to a method with something like...<br>
<br>
class StandardOut(object):<br>
<br>
    def __init__(self): pass<br>
<br>
    def write(self, string):<br>
        do_stuff()<br>
<br>
I&#39;m not sure if that&#39;ll work. Just thinking out loud really.<br>
<div class="HOEnZb"><div class="h5"><br>
On 10 November 2012 08:17, Thomas Kluyver &lt;<a href="mailto:takowl@gmail.com">takowl@gmail.com</a>&gt; wrote:<br>
&gt; The only thing I can think of is to hack an ast transformation into %run, to<br>
&gt; turn print statements into calls to a function you&#39;ve defined.<br>
&gt;<br>
&gt; The good news is that a lot of scientific python packages now support python<br>
&gt; 3.<br>
&gt;<br>
&gt; Thanks,<br>
&gt; Thomas<br>
&gt;<br>
&gt; On Nov 10, 2012 1:10 AM, &quot;Gökhan Sever&quot; &lt;<a href="mailto:gokhansever@gmail.com">gokhansever@gmail.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; Thanks for the reply Thomas.<br>
&gt;&gt;<br>
&gt;&gt; I still use Python 2.7, along with all of the scientific Python stack.<br>
&gt;&gt;<br>
&gt;&gt; Do you think is there a simple way to modify IPython&#39;s &quot;run&quot; command so<br>
&gt;&gt; that output&#39;s pretty printed just like IPython shell?<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; On Fri, Nov 9, 2012 at 2:28 AM, Thomas Kluyver &lt;<a href="mailto:takowl@gmail.com">takowl@gmail.com</a>&gt; wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; In python 3, you can replace the builtin print function. I don&#39;t know of<br>
&gt;&gt;&gt; any way to modify the behaviour of print statements in python 2.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Thomas<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; On Nov 9, 2012 6:59 AM, &quot;Gökhan Sever&quot; &lt;<a href="mailto:gokhansever@gmail.com">gokhansever@gmail.com</a>&gt; wrote:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Hello,<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; I would like to be able print NumPy arrays matching the IDL&#39;s array<br>
&gt;&gt;&gt;&gt; print outout. For instance:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; IDL&gt; print, findgen(5)<br>
&gt;&gt;&gt;&gt;       0.00000      1.00000      2.00000      3.00000      4.00000<br>
&gt;&gt;&gt;&gt; IDL&gt; print, dindgen(5)<br>
&gt;&gt;&gt;&gt;        0.0000000       1.0000000       2.0000000       3.0000000<br>
&gt;&gt;&gt;&gt; 4.0000000<br>
&gt;&gt;&gt;&gt;        0.0000000       1.0000000       2.0000000       3.0000000<br>
&gt;&gt;&gt;&gt; 4.0000000<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; I1 np.arange(5, dtype=&#39;float64&#39;)<br>
&gt;&gt;&gt;&gt; O1        0.0000000       1.0000000       2.0000000       3.0000000<br>
&gt;&gt;&gt;&gt; 4.0000000<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; I2 np.arange(5, dtype=&#39;float32&#39;)<br>
&gt;&gt;&gt;&gt; O2       0.00000      1.00000      2.00000      3.00000      4.00000<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Ignoring O1 and O2 lines, outputs (formatting) are matching. I achieved<br>
&gt;&gt;&gt;&gt; this by defining some custom pprint formatters in the IPy config file.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; However, this is only valid within IPython while just typing array<br>
&gt;&gt;&gt;&gt; names. For instance, running these lines revert the printing settings back<br>
&gt;&gt;&gt;&gt; to normal.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Is there a way to make this type of customized printing default for<br>
&gt;&gt;&gt;&gt; executing a file via Python? ie., can we replace python&#39;s print statement<br>
&gt;&gt;&gt;&gt; with pprint?<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; If not, should I edit numpy/core/arrayprint.py and use a pythonrc file<br>
&gt;&gt;&gt;&gt; to achieve the effect?<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; I am also interested in custom printing other data types than nd.arrays.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Thanks.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; --<br>
&gt;&gt;&gt;&gt; Gökhan<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt;&gt; IPython-User mailing list<br>
&gt;&gt;&gt;&gt; <a href="mailto:IPython-User@scipy.org">IPython-User@scipy.org</a><br>
&gt;&gt;&gt;&gt; <a href="http://mail.scipy.org/mailman/listinfo/ipython-user" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-user</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt; IPython-User mailing list<br>
&gt;&gt;&gt; <a href="mailto:IPython-User@scipy.org">IPython-User@scipy.org</a><br>
&gt;&gt;&gt; <a href="http://mail.scipy.org/mailman/listinfo/ipython-user" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-user</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; --<br>
&gt;&gt; Gökhan<br>
&gt;&gt;<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; IPython-User mailing list<br>
&gt;&gt; <a href="mailto:IPython-User@scipy.org">IPython-User@scipy.org</a><br>
&gt;&gt; <a href="http://mail.scipy.org/mailman/listinfo/ipython-user" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-user</a><br>
&gt;&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; IPython-User mailing list<br>
&gt; <a href="mailto:IPython-User@scipy.org">IPython-User@scipy.org</a><br>
&gt; <a href="http://mail.scipy.org/mailman/listinfo/ipython-user" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-user</a><br>
&gt;<br>
_______________________________________________<br>
IPython-User mailing list<br>
<a href="mailto:IPython-User@scipy.org">IPython-User@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/ipython-user" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-user</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br>Gökhan<br>
</div>