如何在ipython中传递命令行参数?

如何在ipython中传递命令行参数?,python,ipython,Python,Ipython,我有两个ipynb文件 cmd.ipynb import sys print sys.argv test.ipynb %run cmd.ipynb 1 2 3 4 当运行nng test.ipynb时,我希望它可以打印 ['cmd.ipynb', '1', '2', '3', '4'] ,但它却打印出来了 ['.../python/lib/python2.7/site-packages/ipykernel/__main__.py', '-f', '.../.local/share/jupy

我有两个ipynb文件

cmd.ipynb

import sys
print sys.argv
test.ipynb

%run cmd.ipynb 1 2 3 4
当运行nng test.ipynb时,我希望它可以打印

['cmd.ipynb', '1', '2', '3', '4']
,但它却打印出来了

['.../python/lib/python2.7/site-packages/ipykernel/__main__.py', '-f', '.../.local/share/jupyter/runtime/kernel-fd79e9d9-d66f-4cf6-856b-a4a3c3ea73a0.json']

有人能告诉我如何解决这个问题吗?

它需要是python笔记本文件吗?如果将其重命名为
.py
它运行得很好:
%run cmd.py 1 2 3 4
打印
['cmd.py',1',2',3',4']
,这是因为
.ipynb
文件不是
.py
文件。
.ipynb
有它自己的怪癖(它自己的参数),这就是为什么当运行cmd.ipynb时,你会看到你看到的东西。您最好将代码放在
cmd.py
文件中,然后
%运行cmd.py 1 2 3 4
。From.:有一种特殊用法上面的文本不适用:如果文件名以.ipy[nb]结尾,文件将作为ipython脚本运行,就像命令是在ipython提示符下编写的一样
.ipy[nb]
文件得到特殊处理。按建议重命名。感谢您的帮助!我还有一个问题。假设我想将一个变量作为命令行参数传递,如何使用该变量的值而不是该变量的名称?欢迎使用:请将新问题作为新问题发布,而不是作为对现有不同问题的附带注释发布。