当我安装pip install notebook (或者pip install jupyter)后pip会自动安装一个叫做prompt-toolkit的包,这个时候再调用wxpy中的embed()函数就会报错
Traceback (most recent call last):
File "C:\Python37\lib\site-packages\prompt_toolkit\eventloop\context.py", line 88, in get
return self._storage[ctx]
KeyError: 0
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Python37\lib\site-packages\prompt_toolkit\output\defaults.py", line 52, in get_default_output
value = _default_output.get()
File "C:\Python37\lib\site-packages\prompt_toolkit\eventloop\context.py", line 90, in get
raise TaskLocalNotSetError
prompt_toolkit.eventloop.context.TaskLocalNotSetError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "L:\数字货币咨询\python_script\宏观指数\tushare_demo.py", line 50, in <module>
embed()
File "C:\Python37\lib\site-packages\wxpy\utils\console.py", line 74, in embed
_shell(local=local, banner=banner)
File "C:\Python37\lib\site-packages\wxpy\utils\console.py", line 17, in _ipython
config=load_default_config()
File "C:\Python37\lib\site-packages\traitlets\config\configurable.py", line 412, in instance
inst = cls(*args, **kwargs)
File "C:\Python37\lib\site-packages\IPython\terminal\embed.py", line 159, in __init__
super(InteractiveShellEmbed,self).__init__(**kw)
File "C:\Python37\lib\site-packages\IPython\terminal\interactiveshell.py", line 460, in __init__
self.init_prompt_toolkit_cli()
File "C:\Python37\lib\site-packages\IPython\terminal\interactiveshell.py", line 292, in init_prompt_toolkit_cli
**self._extra_prompt_options())
File "C:\Python37\lib\site-packages\prompt_toolkit\shortcuts\prompt.py", line 285, in __init__
output = output or get_default_output()
File "C:\Python37\lib\site-packages\prompt_toolkit\output\defaults.py", line 61, in get_default_output
return create_output()
File "C:\Python37\lib\site-packages\prompt_toolkit\output\defaults.py", line 35, in create_output
return Win32Output(stdout)
File "C:\Python37\lib\site-packages\prompt_toolkit\output\win32.py", line 83, in __init__
info = self.get_win32_screen_buffer_info()
File "C:\Python37\lib\site-packages\prompt_toolkit\output\win32.py", line 168, in get_win32_screen_buffer_info
self.flush()
File "C:\Python37\lib\site-packages\prompt_toolkit\output\win32.py", line 296, in flush
self.stdout.flush()
AttributeError: 'NoneType' object has no attribute 'flush'
>>>
当我pip uninstall prompt-toolkit后就正常了