我正在使用Pyramid框架练习Python。
我在我的主包文件夹中创建了一个py myfuncs.py
,其中还有一个带有views.py
的Views文件夹和Models文件夹(里面的模型)以及静态文件和模板的其他文件夹(由金字塔脚手架创建。
我想在myproject包根目录下的myfuncs.py中定义函数和类,然后从位于各自视图和模型文件夹中的任何视图和模型中访问它们。
我怎样才能做到这一点?我尝试导入但它不起作用。
答案 0 :(得分:6)
想象一下文件夹和文件的结构:
MyFuncs (folder)
__init__.py (can be completely empty)
utilFunctions.py
genericFunctions.py
uselessFunctions.py
Views (folder)
__init__.py (again!!)
views.py
现在您可以“导入”文件夹(实际上您使用文件夹名称导入__ init __.py,但现在这是详细信息) 务必正确设置PYTHONPATH。
例如:
import MyFuncs.utilFunctions
from MyFuncs.Views import views
import MyFuncs.uselessFunctions as nonsenseFunctions
etc.etc。
__ init __.py必须位于您要导入的任何文件夹中
在views.py中,您只需执行以下操作:
from MyFuncs import utilFunctions
utilFunctions.aFunctionYouCode()
答案 1 :(得分:1)
您需要在根文件夹中包含__init__.py
,然后将其导入:
import functions
然后您应该可以使用functions.<functionname>()