Ipython:自动完成使会话崩溃('sys' 未定义)
Ipython: Autocompletion crashes session ('sys' is not defined)
当我尝试使用 iPython 的自动完成时,会话崩溃并出现以下错误:
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/IPython/terminal/ptutils.py", line 113, in get_completions
yield from self._get_completions(body, offset, cursor_position, self.ipy_completer)
File "/usr/local/lib/python3.9/site-packages/IPython/terminal/ptutils.py", line 129, in _get_completions
for c in completions:
File "/usr/local/lib/python3.9/site-packages/IPython/core/completer.py", line 438, in _deduplicate_completions
completions = list(completions)
File "/usr/local/lib/python3.9/site-packages/IPython/core/completer.py", line 1818, in completions
for c in self._completions(text, offset, _timeout=self.jedi_compute_type_timeout/1000):
File "/usr/local/lib/python3.9/site-packages/IPython/core/completer.py", line 1861, in _completions
matched_text, matches, matches_origin, jedi_matches = self._complete(
File "/usr/local/lib/python3.9/site-packages/IPython/core/completer.py", line 2029, in _complete
completions = self._jedi_matches(
File "/usr/local/lib/python3.9/site-packages/IPython/core/completer.py", line 1373, in _jedi_matches
interpreter = jedi.Interpreter(
File "/usr/local/lib/python3.9/site-packages/jedi/api/__init__.py", line 725, in __init__
super().__init__(code, environment=environment,
TypeError: __init__() got an unexpected keyword argument 'column'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/bin/ipython", line 8, in <module>
sys.exit(start_ipython())
File "/usr/local/lib/python3.9/site-packages/IPython/__init__.py", line 126, in start_ipython
return launch_new_instance(argv=argv, **kwargs)
File "/usr/local/lib/python3.9/site-packages/traitlets/config/application.py", line 845, in launch_instance
app.start()
File "/usr/local/lib/python3.9/site-packages/IPython/terminal/ipapp.py", line 356, in start
self.shell.mainloop()
File "/usr/local/lib/python3.9/site-packages/IPython/terminal/interactiveshell.py", line 564, in mainloop
self.interact()
File "/usr/local/lib/python3.9/site-packages/IPython/terminal/interactiveshell.py", line 547, in interact
code = self.prompt_for_code()
File "/usr/local/lib/python3.9/site-packages/IPython/terminal/interactiveshell.py", line 473, in prompt_for_code
text = self.pt_app.prompt(
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/shortcuts/prompt.py", line 1013, in prompt
return self.app.run(set_exception_handler=set_exception_handler)
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/application/application.py", line 816, in run
return loop.run_until_complete(
File "/usr/local/Cellar/python@3.9/3.9.1_6/Frameworks/Python.framework/Versions/3.9/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
return future.result()
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/application/application.py", line 783, in run_async
return await _run_async2()
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/application/application.py", line 771, in _run_async2
await self.cancel_and_wait_for_background_tasks()
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/application/application.py", line 872, in cancel_and_wait_for_background_tasks
await task
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/buffer.py", line 1854, in new_coroutine
await coroutine(*a, **kw)
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/buffer.py", line 1683, in async_completer
async for completion in self.completer.get_completions_async(
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/completion/base.py", line 269, in get_completions_async
async for completion in completer.get_completions_async(
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/completion/base.py", line 196, in get_completions_async
for item in self.get_completions(document, complete_event):
File "/usr/local/lib/python3.9/site-packages/IPython/terminal/ptutils.py", line 116, in get_completions
exc_type, exc_value, exc_tb = sys.exc_info()
NameError: name 'sys' is not defined
If you suspect this is an IPython 7.19.0 bug, please report it at:
https://github.com/ipython/ipython/issues
or send an email to the mailing list at ipython-dev@python.org
You can print a more detailed traceback right now with "%tb", or use "%debug"
to interactively debug it.
Extra-detailed tracebacks for bug-reporting purposes can be enabled via:
%config Application.verbose_crash=True
如何修复这些错误?
尝试安装较旧的绝地版本:
pip install --upgrade 'jedi<0.18.0'
我设法通过卸载 python3、pip 和 ipython 使错误消失。然后安装Anaconda。
我知道这不是解决方案,但它为我完成了工作。
安装 pip 时遇到同样的问题 ipython==7.19.0
,幸运的是它在我的另一个环境中工作,受到 的启发,我检查了 jedi 版本,确实有版本更改。
如果所选答案不适合您,您可以安装此特定版本:
pip install jedi==0.17.2
当我尝试使用 iPython 的自动完成时,会话崩溃并出现以下错误:
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/IPython/terminal/ptutils.py", line 113, in get_completions
yield from self._get_completions(body, offset, cursor_position, self.ipy_completer)
File "/usr/local/lib/python3.9/site-packages/IPython/terminal/ptutils.py", line 129, in _get_completions
for c in completions:
File "/usr/local/lib/python3.9/site-packages/IPython/core/completer.py", line 438, in _deduplicate_completions
completions = list(completions)
File "/usr/local/lib/python3.9/site-packages/IPython/core/completer.py", line 1818, in completions
for c in self._completions(text, offset, _timeout=self.jedi_compute_type_timeout/1000):
File "/usr/local/lib/python3.9/site-packages/IPython/core/completer.py", line 1861, in _completions
matched_text, matches, matches_origin, jedi_matches = self._complete(
File "/usr/local/lib/python3.9/site-packages/IPython/core/completer.py", line 2029, in _complete
completions = self._jedi_matches(
File "/usr/local/lib/python3.9/site-packages/IPython/core/completer.py", line 1373, in _jedi_matches
interpreter = jedi.Interpreter(
File "/usr/local/lib/python3.9/site-packages/jedi/api/__init__.py", line 725, in __init__
super().__init__(code, environment=environment,
TypeError: __init__() got an unexpected keyword argument 'column'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/bin/ipython", line 8, in <module>
sys.exit(start_ipython())
File "/usr/local/lib/python3.9/site-packages/IPython/__init__.py", line 126, in start_ipython
return launch_new_instance(argv=argv, **kwargs)
File "/usr/local/lib/python3.9/site-packages/traitlets/config/application.py", line 845, in launch_instance
app.start()
File "/usr/local/lib/python3.9/site-packages/IPython/terminal/ipapp.py", line 356, in start
self.shell.mainloop()
File "/usr/local/lib/python3.9/site-packages/IPython/terminal/interactiveshell.py", line 564, in mainloop
self.interact()
File "/usr/local/lib/python3.9/site-packages/IPython/terminal/interactiveshell.py", line 547, in interact
code = self.prompt_for_code()
File "/usr/local/lib/python3.9/site-packages/IPython/terminal/interactiveshell.py", line 473, in prompt_for_code
text = self.pt_app.prompt(
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/shortcuts/prompt.py", line 1013, in prompt
return self.app.run(set_exception_handler=set_exception_handler)
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/application/application.py", line 816, in run
return loop.run_until_complete(
File "/usr/local/Cellar/python@3.9/3.9.1_6/Frameworks/Python.framework/Versions/3.9/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
return future.result()
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/application/application.py", line 783, in run_async
return await _run_async2()
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/application/application.py", line 771, in _run_async2
await self.cancel_and_wait_for_background_tasks()
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/application/application.py", line 872, in cancel_and_wait_for_background_tasks
await task
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/buffer.py", line 1854, in new_coroutine
await coroutine(*a, **kw)
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/buffer.py", line 1683, in async_completer
async for completion in self.completer.get_completions_async(
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/completion/base.py", line 269, in get_completions_async
async for completion in completer.get_completions_async(
File "/usr/local/lib/python3.9/site-packages/prompt_toolkit/completion/base.py", line 196, in get_completions_async
for item in self.get_completions(document, complete_event):
File "/usr/local/lib/python3.9/site-packages/IPython/terminal/ptutils.py", line 116, in get_completions
exc_type, exc_value, exc_tb = sys.exc_info()
NameError: name 'sys' is not defined
If you suspect this is an IPython 7.19.0 bug, please report it at:
https://github.com/ipython/ipython/issues
or send an email to the mailing list at ipython-dev@python.org
You can print a more detailed traceback right now with "%tb", or use "%debug"
to interactively debug it.
Extra-detailed tracebacks for bug-reporting purposes can be enabled via:
%config Application.verbose_crash=True
如何修复这些错误?
尝试安装较旧的绝地版本:
pip install --upgrade 'jedi<0.18.0'
我设法通过卸载 python3、pip 和 ipython 使错误消失。然后安装Anaconda。
我知道这不是解决方案,但它为我完成了工作。
安装 pip 时遇到同样的问题 ipython==7.19.0
,幸运的是它在我的另一个环境中工作,受到
如果所选答案不适合您,您可以安装此特定版本:
pip install jedi==0.17.2