如何将命令行参数传递给ipython

时间:2014-03-25 10:33:52

标签: python ipython

有没有办法在使用ipython时通过命令行将参数传递给我的python脚本?理想情况下,我想将我的脚本称为:

ipython -i script.py --argument blah

我希望能够在--argument中列出blahsys.argv

1 个答案:

答案 0 :(得分:48)

您可以在此之前使用一个--个选项:

ipython  script.py -- --argument blah

Ipython的帮助:

ipython [subcommand] [options] [-c cmd | -m mod | file] [--] [arg] ...

If invoked with no options, it executes the file and exits, passing the
remaining arguments to the script, just as if you had specified the same
command with python. You may need to specify `--` before args to be passed
to the script, to prevent IPython from attempting to parse them. If you
specify the option `-i` before the filename, it will enter an interactive
IPython session after running the script, rather than exiting.

演示:

$ cat script.py 
import sys
print(sys.argv)

$ ipython  script.py -- --argument blah
['script.py', '--argument', 'blah']

$ ipython  script.py -- arg1 arg2
['script.py', 'arg1', 'arg2']