我正在使用Eclipse + PyDev进行Python项目。我安装了PyDAQmx,它利用了DAQmx的C库。但是,每当我调用任何函数或引用该文件中的任何常量时,我都会得到一个“未定义变量”错误,尽管导入了必要的部分。程序运行得很好,所以我相信这是Eclipse / PyDev没有链接到C库。我把它作为外部库包含在内,但我仍然得到同样的错误。
这是一个代码示例。这是有效的,如果我运行它可以正常工作,但是它很烦人,试图用Eclipse来寻找实际错误总是告诉我它有未定义的变量。
from PyDAQmx.DAQmxFunctions import *
from PyDAQmx.DAQmxConstants import *
counter="Dev1/ctr0"
DAQmxResetDevice(counter.split('/')[0])
使用这些函数/常量让Eclipse对我感到满意需要做些什么?感谢
答案 0 :(得分:3)
你想要做的是强制PyDev通过实际导入模块并使用dir()
来获取模块内容,而不是尝试使用它的解析器(它无法查看编译后的扩展)。这适用于许多扩展模块,所以希望它也适用于PyDAQmx。
为此,您需要将这些模块添加到“Forced Builtins”列表中。可从以下位置访问此列表:
Windows -> Preferences -> PyDev -> Interpreter -> Python -> Forced Builtins