Python:导入变量失败
我将Eclipse/PyDev与Python2.7一起用于Django中的一个项目。在我的一个应用程序(比如app1)中,我在models.py中定义了一个变量,并为其分配了列表。我无法将这些导入到另一个应用程序(比如app2)的models.py中。假设项目名为projectName projectName/app1/models.pyPython:导入变量失败,python,eclipse,variables,import,pydev,Python,Eclipse,Variables,Import,Pydev,我将Eclipse/PyDev与Python2.7一起用于Django中的一个项目。在我的一个应用程序(比如app1)中,我在models.py中定义了一个变量,并为其分配了列表。我无法将这些导入到另一个应用程序(比如app2)的models.py中。假设项目名为projectName projectName/app1/models.py VARIABLE_NAME = ( ('a', 'choice1'), ('b', 'choice2'), ) from projectNa
VARIABLE_NAME = (
('a', 'choice1'),
('b', 'choice2'),
)
from projectName.app1.models import VARIABLE_NAME
projectName/app2/models.py
VARIABLE_NAME = (
('a', 'choice1'),
('b', 'choice2'),
)
from projectName.app1.models import VARIABLE_NAME
我从Eclipse接收到一个未解析导入的错误:VARIABLE\u NAME
有什么想法吗?PyDev的EclipseAPI也为我做了这件事。它无法检查是否从…导入。。。样式导入实际上将解析为真正的导入。我觉得这很正常。当你运行这个程序时,它可能会工作。如果不是,那很可能是你的错误 PyDev的EclipseAPI也为我做到了这一点。它无法检查是否从…导入。。。样式导入实际上将解析为真正的导入。我觉得这很正常。当你运行这个程序时,它可能会工作。如果不是,那很可能是你的错误 我认为发生了以下事情: 1) Eclipse看到您正在尝试导入,但projectName不是sys.path中的包(除非您显式地添加了它),所以它很好,而且对您来说很麻烦 2) 问题是projectName不应该是一个包;至少现在还没有。根据,它说“此外,manage.py……将项目的包放在sys.path上。”
因此,我将忽略“错误”,即使Eclipse在技术上是正确的,您无法进行该导入。Django设置的要点是,当您执行“python manage.py runserver”时,projectName实际上是可用的,所以一切都很好 我认为发生了以下事情: 1) Eclipse看到您正在尝试导入,但projectName不是sys.path中的包(除非您显式地添加了它),所以它很好,而且对您来说很麻烦 2) 问题是projectName不应该是一个包;至少现在还没有。根据,它说“此外,manage.py……将项目的包放在sys.path上。”
因此,我将忽略“错误”,即使Eclipse在技术上是正确的,您无法进行该导入。Django设置的要点是,当您执行“python manage.py runserver”时,projectName实际上是可用的,所以一切都很好 找到了解决办法。正如yanxhang指出的,这是一个蟒蛇问题。在Eclipse的首选项中,在PyDev>解释器下,在System PYTHONPATH的底部窗口中,确保添加作为projectName父级的文件夹,然后单击apply。这允许projectName解析自身及其所有子项。找到了解决方案。正如yanxhang指出的,这是一个蟒蛇问题。在Eclipse的首选项中,在PyDev>解释器下,在System PYTHONPATH的底部窗口中,确保添加作为projectName父级的文件夹,然后单击apply。这允许projectName解析自身及其所有子项