macOS High Sierra下Anaconda py27环境启动Spyder出现kq_init警告咨询
关于Spyder在Python 2.7环境启动时kqueue警告的解答
Hey there! Let's tackle your questions step by step:
是否需要关注这些警告?
完全不需要。这些[warn] kq_init: detected broken kqueue; not using.: Undefined error: 0警告只是底层组件的日志提示,不会影响Spyder的正常功能——你已经确认Spyder能正常打开、使用对应Python版本且运行无异常,说明这些警告只是“告知性”的,而非“错误性”的,不用特意去处理。
为何仅在py27环境出现?
这个问题和Python版本对应的依赖库兼容性有关:
- Python 2.7是比较老旧的版本,Spyder在py27环境中使用的依赖组件(比如Qt相关库、事件循环处理库)版本也相对陈旧,这些旧版本组件和High Sierra系统的kqueue(macOS/BSD系统的事件通知机制)存在兼容性问题,组件检测到kqueue无法正常工作后,就会抛出这个警告并跳过它。
- 而Python 3.6的环境中,Spyder及其依赖库已经更新到了适配High Sierra的版本,修复了kqueue相关的兼容性问题,所以不会出现这类警告。
带这些警告运行Spyder是否安全正常?
非常安全且正常。警告的本质是组件在发现kqueue不可用后,自动切换到了其他可用的事件处理方式,整个过程是组件的容错机制在起作用,不会影响Spyder的核心功能(代码编辑、运行、调试等)。你已经验证过运行无异常,所以可以放心继续使用这个环境。
内容的提问来源于stack exchange,提问作者Natsfan
相关产品推荐
相关产品推荐

