操作系统: win7
python: 3.8.5
pip: 20.2.2
esphome: 1.14.5
遇到的问题: raise NotImplementedError
解决方法:
打开C:\Users\Administrator\AppData\Local\Programs\Python\Python38\Lib\site-packages\tornado\platform\asyncio.py (目录可能不同,自己修改) 添加以下代码
import sys
if sys.platform == 'win32':
asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
原理:
由于 python3.8 asyncio 在 windows 上默认使用 ProactorEventLoop 造成的,而不是之前的 SelectorEventLoop。jupyter 依赖 tornado,而 tornado 在 window 上需要使用 SelectorEventLoop,所以产生这个报错. 参考官方文档:https://www.tornadoweb.org/en/stable/index.html#installation
|