我正在调试项目,现在每当我处于调试模式(Python 2.7.15)并尝试引用类成员(例如:visa_device.protocols)时,它都会给出NameError:全局名称'dict_keys'未定义。它之前的工作正如预期的那样,并且无法回想起可能导致此问题的项目的任何更改。我唯一能想到的就是将SDK添加到项目python路径中,但无法想象会导致这个问题吗?
完整错误消息:
追踪(最近一次通话): 文件“C:\ eclipse \ plugins \ org.python.pydev.core_6.3.3.201805051638 \ pysrc_pydevd_bundle \ pydevd_comm.py”,第1211行,在do_it中 msg = _pydev_completer.generate_completions_as_xml(frame,self.act_tok) 在generate_completions_as_xml中输入文件“C:\ eclipse \ plugins \ org.python.pydev.core_6.3.3.201805051638 \ pysrc_pydev_bundle_pydev_completer.py”,第167行 completions = pydevconsole.get_completions(act_tok,act_tok,updated_globals,frame.f_locals) get_completions中的文件“C:\ eclipse \ plugins \ org.python.pydev.core_6.3.3.201805051638 \ pysrc \ pydevconsole.py”,第462行 interpreterInterface.interpreter.update(globals,locals) 更新中的文件“C:\ eclipse \ plugins \ org.python.pydev.core_6.3.3.201805051638 \ pysrc_pydev_bundle \ pydev_ipython_console_011.py”,第350行 对于dict_keys中的键(self.ipython.user_ns): NameError:未定义全局名称'dict_keys'
编辑:删除了ipython 5.7.0并且调试器现在正在按预期工作 - 因为上次运行时安装了奇怪的行为。将继续调查。