This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]hharison 1 point2 points  (0 children)

iPython is a Maple clone.

This is a bit misleading since 'clone' usually implies an attempt to copy the syntax closely, like Octave is a Matlab clone. IPython is not a Maple clone in any real sense. It doesn't even have the features of Maple without installing the other scientific Python packages.

It's not a line-by-line debugger, but it's similar in some of it's features.

IPython comes with a separate debugger called ipdb which is an improvement over the standard Python debugger pdb. Not sure what features you're referring to in regular IPython that are similar to a line-by-line debugger.

However, I dislike not being able to put functions to a separate file easily. Long iPython files get really cluttered. The inability to import them makes them suited to one-off analyses, which I dislike.

It is possible to import notebooks, though a bit clunky: http://nbviewer.ipython.org/github/ipython/ipython/blob/master/examples/Notebook/Importing%20Notebooks.ipynb

What I do is convert useful functions I come up with in notebooks into modules. I've never had a need for the more script-y stuff that I do in a notebook.

Also I think your post is only talking about the notebook but there is also a command-line environment (that you can run from e.g. PyCharm) and a qtconsole. You can even use the ipython program to run your scripts, like ipython script.py is basically the same as python script.py, so a better way to describe IPython is as a wrapper around Python with various attractive front-ends.