我有一个名为caller.py的Python文件位于C:\ Temp。我还有另外两个Python文件:位于C:\ Temp中的local_testlib.py
和位于C:\ Temp \ MyLibs中的testlib.py
。
我正在尝试在Wing IDE Pro中导入这两个文件。
import sys
sys.path.append(r'C:\Temp\MyLibs')
import testlib #located in C:\Temp\MyLibs
import local_testlib #located in C:\Temp
#check suggestions by Wing
local_testlib. #get suggestions as list of variables etc. from the file
testlib. #don't get any suggestions
print testlib.myvar #get variable value printed OK
我只收到local_testlib的建议,没有关于testlib的建议(见下图)。我确实可以访问testlib.py中的变量(因此可以正确导入)。我应该做些什么调整来完成这项工作?
答案 0 :(得分:1)
要解决此问题,您可以在Wing的项目属性(或Wing 101中的配置Python对话框)中将C:\ Temp \ MyLibs添加到Python路径中。或者在Wing Personal或Pro中你可以将文件设置为主调试文件,虽然我只是注意到你需要在该方法工作之前重启Wing,因为显然无法重新扫描文件。
这可能会更改为在我们的源代码分析中考虑本地路径修改,尽管通常修改sys.path这样做并不是一个很好的方法,因为添加的路径可能会搞砸你以后导入的其他模块他们正试图从另一个位置导入一个名为testlib的模块。这就是为什么我们只在主调试文件中寻找这样的修改。
您可能希望通过在其中添加名为 init .py的文件将MyLibs变为包,然后您可以执行此操作:
来自MyLibs import testlib
它解决了它在Wing IDE中没有任何额外配置。