Google App引擎文档指出,只要用纯Python编写,就可以上传和使用第三方库。
我需要采取哪些步骤才能做到这一点?
答案 0 :(得分:11)
我所做的是在我的根目录中创建了一个名为fix_path.py的文件,如下所示:
import os
import sys
import jinja2
# path to lib direcotory
sys.path.insert(0, os.path.join(os.path.dirname(__file__), 'lib'))
然后我创建了一个lib目录,并将模块放在那里。
例如,我使用WTForms。我的文件结构如下所示。
当我准备从我的somefile脚本中调用它时
import fix_path # has to be first.
import wtforms
here是我的github源码中的这个例子。 checkout fix_path.py用于setup和views.py以供使用。
答案 1 :(得分:0)
我尝试了以下步骤。
lib/__init__.py
。创建了我的模块(mymodule.py
),并定义了一个函数,即
def myfunc():
return "mycustomfunction"
在main.py
from lib import mymodule
我可以使用myfunc()
返回的值,并将其作为模板值传递给我的jinja2模板
同样,如果我们按照@rjz在第一个答案中指出的那样,如果第三方库只是一个模块,那么我们可以将它保存在带有 init 文件的库中,它可以是使用import语句导入(第3点)。如果第三方库是一个包,那么我们可以将它保存在项目根目录中并使用import main.py
中的导入语句再次导入它:
from thirdpartypackage import *