欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

运行 Python 代码的 Jupyter Notebook 如何传递参数

最编程 2024-07-17 16:17:42
...

在Jupyter Notebook中,运行Python源代码非常方便,但是如何模拟命令行方式运行时的输入参数呢?
如果直接使用sys.argv会出现错误。例如使用argv[1]时出现:
运行错误截图
导致上述错误的原因为:在Jupyter Notebook中运行Python代码时,argv中有三个默认参数,分别是:
argv[0]: ‘路径\test.py’ (源代码文件名)
argv[1]: ‘-f’
argv[2]: ‘路径\kernel-…json’

而在命令行方式下运行Python代码时,argv[0]与上述argv[0]相同,但argv[1]为命令行中紧随在test.py之后的字符串,例如,在如下命令行中:
python test.py test.txt
argv[1]为 test.txt

因此,解决方案就是对 list argv 进行修改,如下面的代码所示:

#需要sys模块来使用argv
from sys import argv
#查看当前的argv列表
print(len(argv))
print(argv)

#直接修改argv
argv[1] = 'test.txt'
#也可以添加新的参数
argv.append('test.txt')

这样,在后续代码中, .py 和 .ipynb源代码一致,无需为在Jupyter Notebook中运行而进行修改。

推荐阅读