Windose and Python

Todd Pitts from Sandia asked me the following question.

I have one final question about python on windows. It seems
that the non-interactive scripting works well enough. However, I have
not found a single interactive interpreter that I could recommend to
members of my group without serious reservations.

I have tried IPython,
PyCrust (various), IDLE, Using it from within emacs (not cygwin emacs,
just emacs under windows), PythonWin, etc. They all have serious
problems when it comes to usability. Most don't have tab completion at
all. Most, (emacs included) don't work with any plotting package. I
have tried gist from scipy and matplotlib (doesn't work with anything
except straight scripting).

Is python really this unusable for
interactive data exploration and modeling under Windows?

I'm forwarding it to these lists so that individuals with more experience on Windows than I have can respond to his request.

What do people use on Windows for interactive work???

-Travis Oliphant

I am new to Python, and have encountered some of these issues. Recently, the
matplotlib list has had some discussion about interactive use. Others will
have better informed responses than I, but you should know that matplotlib
can be used with an interactive interpreter. If you are still interested (and
I encourage you to look into it) check the matplotlib website for more
information about interactive use.

I recently discovered SciTE/Scintilla, which is a code editor and is capable
of generating an API for python based on what modules are installed on your
system. There is a native version of SciTE for windows, and my initial
impression has been very good. The matplotlib module was recognized and once
the was generated (by running a python script), autocompletion is active.

ยทยทยท

On Thursday 06 May 2004 09:13 pm, Travis Oliphant wrote:

Todd Pitts from Sandia asked me the following question.

>I have one final question about python on windows. It seems
>that the non-interactive scripting works well enough. However, I have
>not found a single interactive interpreter that I could recommend to
>members of my group without serious reservations.
>
>I have tried IPython,
>PyCrust (various), IDLE, Using it from within emacs (not cygwin emacs,
>just emacs under windows), PythonWin, etc. They all have serious
>problems when it comes to usability. Most don't have tab completion at
>all. Most, (emacs included) don't work with any plotting package. I
>have tried gist from scipy and matplotlib (doesn't work with anything
>except straight scripting).
>
>Is python really this unusable for
>interactive data exploration and modeling under Windows?

I'm forwarding it to these lists so that individuals with more
experience on Windows than I have can respond to his request.

What do people use on Windows for interactive work???

-Travis Oliphant

Travis Oliphant wrote:

Todd Pitts from Sandia asked me the following question.

I have one final question about python on windows. It seems
that the non-interactive scripting works well enough. However, I have
not found a single interactive interpreter that I could recommend to
members of my group without serious reservations.

I have tried IPython,
PyCrust (various), IDLE, Using it from within emacs (not cygwin emacs,
just emacs under windows), PythonWin, etc. They all have serious
problems when it comes to usability. Most don't have tab completion at
all. Most, (emacs included) don't work with any plotting package. I
have tried gist from scipy and matplotlib (doesn't work with anything
except straight scripting).

Is python really this unusable for
interactive data exploration and modeling under Windows?

As the ipython (http://ipython.scipy.org) author I'm obviously biased, but Windows users seem fairly happy with it. Using Gary Bishop's extensions, it is possible (it should basically work out of the box, though I don't know because I don't use Windows) to get readline and coloring support under a normal (non-cygwin) command shell.

Gary's tools are at:

I also imagine that using ipython within emacs as your python shell (which requires a special python-mode.el and ipython.el, available at http://ipython.scipy.org/dist/ipython-emacs-0.3.tgz) must be an option under Windows. I've only used them under Linux, but since this is just regular Emacs lisp, I imagine it should be platform-independent.

I hope this helps.

Regards,

Fernando.

Travis Oliphant wrote:

Todd Pitts from Sandia asked me the following question.

all. Most, (emacs included) don't work with any plotting package. I
have tried gist from scipy and matplotlib (doesn't work with anything
except straight scripting).

Sorry for the 2nd post. I forgot to mention plotting: ipython includes enhanced support for Gnuplot, with modifications to the interactive plotting syntax to make it as quick and easy to use as possible. I use python 100% of the time I'm working on scientific code and data exploration, and my environment is: Xemacs for heavy editing, a terminal with ipython for interactive work, Gnuplot (with ipython's extensions) for 2d plotting and Mayavi (http://mayavi.sourceforge.net) for sophisticated data visualization. With Gnuplot 4.0's mouse support, it is an extremely convenient tool for fast data exploration, capable of publication-quality PostScript output. Finally, for diagram generation and other problems of a graphical but not purely 'plotting' nature, I have been very happy with PyX.

IPython was designed _specifically_ to make interactive scientific computing work as fluid as possible. It has direct access to the underlying system shell, it remembers previous values (like Mathematica's %N variables), and has many other features which you may find useful in this kind of context.

I haven't looked at matplotlib yet (I've been using gnuplot since the days of Windows 3.0), but I will very soon, and I have heard excellent things about it. For those already familiar with matlab's syntax, this may be a better option than gnuplot. If there are any problems with ipython's interaction with matplotlib, I'll gladly fix them if possible.

Regards,

Fernando.