4

Google App 引擎文档指出,如果第三方库是用纯 Python 编写的,则可以上传和使用它们。

我需要采取哪些步骤来执行此操作?

4

2 回答 2

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。我的文件结构如下所示。

    • wtforms
  • fix_path.py
  • 一些文件.py

当我准备从我的 somefile 脚本中调用它时

import fix_path # has to be first.
import wtforms

是我的 github 源代码中的这个例子。结帐 fix_path.py 用于设置和 views.py 用于使用。

于 2012-05-18T10:33:21.203 回答
0

好吧,我尝试了以下步骤。

  1. 用初始化文件创建了一个目录(lib),即lib/__init__.py在我的项目根目录中。
  2. 创建了我的模块(mymodule.py),并定义了一个函数,即

    def myfunc():
        return "mycustomfunction"
    
  3. 在我的导入 mymodulemain.py

    from lib import mymodule
    

我可以使用返回的值myfunc()并将其作为模板值传递给我的 jinja2 模板

同样,如果我们遵循@rjz 在第一个答案中也指出的内容,如果第 3 方库只是一个模块,那么我们可以将其保存在带有init文件的库中,并且可以使用 import 语句导入(第 3 点)。如果第 3 方库是一个包,那么我们可以将它保存在项目根目录中,然后使用以下 import 语句再次导入它main.py

from thirdpartypackage import * 
于 2013-05-13T12:31:39.740 回答