#python #argparse
#python #argparse
Вопрос:
У меня длинный код, и я продолжаю получать эту ошибку при его запуске. кто-нибудь знает, о чем эта ошибка?
` использование: ipykernel_launcher.py РЕЖИМ [-h] -m
ipykernel_launcher.py: error: the following arguments are required: -m/--mode
An exception has occurred, use %tb to see the full traceback.
SystemExit: 2`
Комментарии:
1. Похоже, вы запускаете a
jupyter-notebook
, у которого естьargparse
анализатор командной строки. Это не сработает. Значения командной строки, которые вы указываете при запускеjupyter
, предназначены только для сервера. Этот код может работать как обычный скрипт python, если заданы аргументы командной строки, как предложеноusage
.2. @hpaulj Я получаю ту же ошибку, когда использую ipython.
Ответ №1:
Из ipython
справки:
ipython [subcommand] [options] [-c cmd | -m mod | file] [--] [arg] ...
Таким образом, мы можем вызвать скрипт, который повторяется sys.argv
с:
0812:~/mypy$ ipython echo.py -- foo bar
['/home/paul/mypy/echo.py', 'foo', 'bar']
или оставаться в интерактивном сеансе:
0812:~/mypy$ ipython echo.py -- foo bar
['/home/paul/mypy/echo.py', 'foo', 'bar']
0824:~/mypy$ ipython -i echo.py -- foo bar
Python 3.6.9 (default, Jul 17 2020, 12:50:27)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.16.1 -- An enhanced Interactive Python. Type '?' for help.
['/home/paul/mypy/echo.py', 'foo', 'bar']
In [1]: sys.argv
Out[1]: ['/usr/local/bin/ipython', '-i', 'echo.py', '--', 'foo', 'bar']
sys.argv
содержит строки командной строки, которые argparse
будет обрабатывать ваш анализатор. Просто укажите ожидаемые значения (как указано в usage
).
Ответ №2:
у меня такая же ошибка при запуске jupyter notebook, как устранить эту ошибку.
- откройте интерфейс командной строки.
- скопируйте путь, по которому установлен ваш python.
- запишите cd в интерфейсе командной строки и укажите путь к установленному python exe.
- при вводе по этому пути в интерфейсе командной строки после этого напишите команду pip install jupyter, после чего подождите некоторое время, чтобы установить новую версию jupyter.