[IPython-user] ipython and optparse
Fernando Perez
Fernando.Perez at colorado.edu
Mon Aug 1 13:49:46 CDT 2005
Johann Cohen Tanugi wrote:
> hello,
> I use optparse to parse command line args and it works fine with my
> python 2.4 install. I also have ipython built on top of it, and it works
> fine as well, but it seems to be a feature of ipython that *all* args
> are passed to it instead of some being passed to the python script for
> processing by optparse....
> So
>
> python -i AngDistSampler.py -k 62.5 --draw
>
> works, but
>
> ipython2.4 -i AngDistSampler.py -k 62.5 --draw
>
> does not : ipython complaining that -k is not a known option.....
>
> thanks for any further information
The -i option is a python option, not an ipython one. For what you are trying
to do, the way to use ipython is:
ipython
[starts ipython]
In[1]: run AngDistSampler.py -k 62.5 --draw
The ipython %run command will execute the script given, passing the rest of
the line to your program as sys.argv, as if it had been executed at the
command line.
It would be nice to implement -i correctly for ipython, though. Something like:
ipython -ipoption1 -ipoption2... -i foo.py --moreargsforfoo
the -i option would terminate ipython's options handling, and pass the rest of
the command line unmodified. This would be useful for those wanting to
benefit from ipython's enhanced tracebacks and pdb support, while requiring a
full restart of the interpreter (so that %run is not enough).
Feel free to file a request for this on the tracker if you think it's
important, so at least it doesn't get forgotten.
Cheers,
f
More information about the IPython-user
mailing list