Python 3.x parser.add_参数和parser.parse_args()和jupyter

Python 3.x parser.add_参数和parser.parse_args()和jupyter,python-3.x,jupyter-notebook,argparse,Python 3.x,Jupyter Notebook,Argparse,我试图用jupyter笔记本运行一些代码,但从一开始,我就遇到了问题 事实上,看起来我无法使用这些命令: parser.add_argument('--lr', default=0.1, type=float, help='learning rate') parser.add_argument('--resume', '-r', action='store_true', help='resume from checkpoint') 用法:ipykernel\u launcher.py[-h][

我试图用jupyter笔记本运行一些代码,但从一开始,我就遇到了问题

事实上,看起来我无法使用这些命令:

parser.add_argument('--lr', default=0.1, type=float, help='learning rate')
parser.add_argument('--resume', '-r', action='store_true', help='resume from checkpoint')
用法:
ipykernel\u launcher.py[-h][-lr-lr][-resume]
ipykernel\u launcher.py
给出错误:
无法识别的参数:-f

以及:

我看到有些人在尝试使用jupyter和arg_parse时已经遇到了这个问题,但我找不到一个简单的解决方案


谢谢你的帮助

当我启动一个空白笔记本并执行

import sys
sys.argv
我明白了

parse_args()
使用调用脚本的shell中的
sys.argv
列表。它是命令行字符串的列表

脚本看到的
sys.argv
包含由
jupyter
创建的
-f
参数

您可以使用
parse\u known\u args()
,以便解析器不会引发此错误。但这不会帮助您获得
--lr
-r
参数,因为
jupyter的
解析器会拒绝它们


前面的SO问题的本质是,您不能向笔记本提供命令行参数。

告诉我们您从其他人的问题中学到了什么。你希望我们给你一个他们没有收到的解决方案吗?问题是我不理解其他的解释,这就是为什么我必须提出一个新问题的原因:/所以在我的情况下没有解决方案??也许我可以说lr=0.1来替换第一个add_参数,但是对于第二个add_参数,我不知道它是什么:'--resume','-r',action='store_true',help='resume from checkpoint'),所以我不知道如何替换它!!需要明确的是,您是在运行Python脚本(a
.py
文件)还是在运行笔记本(.ipynb)?谢谢您的回答:a.ipynb启动后,您不可以从笔记本中控制所有这些吗?
jupyter notebook
命令的目的是启动服务器,而不是与笔记本通话或控制笔记本。服务器可能正在运行几个不同的笔记本。很抱歉,我不太明白您到底想让我们做什么??
import sys
sys.argv
['/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py',
 '-f',
 '/run/user/1000/jupyter/kernel-b2d72478-6aaa-4206-9bf3-38fc1a0fd303.json']