需要帮助理解模块导入错误

时间:2012-05-25 20:25:40

标签: python web2py python-module

我正在尝试将sendgrid Python API用作web2py中的模块。从命令行成功测试后,我把它放到我的modules文件夹中,但是当我尝试将sendgrid导入到我的控制器文件中时,我得到:

File "applications/test/modules/sendgrid/__init__.py", line 4, in
<module>
    del sendgrid, message NameError: name 'sendgrid' is not defined

查看__init__.py文件,我注意到他们在模块级别上进行了*导入,之前我曾见过cause problems,但我不确定是什么问题。< / p>

sendgrid/__init__.py

from sendgrid import *
from message import *

del sendgrid, message

__version__ = "0.1.0"
version_info = (0, 1, 0)

sendgrid api: https://github.com/sendgrid/sendgrid-python

1 个答案:

答案 0 :(得分:4)

通常,第三方模块的最佳做法是通过pipeasy_install(最好是virtualenv)安装它们,如果它们在PyPI上可用而不是将它们复制到PYTHONPATH上。

尝试从您的modules文件夹中删除sendgrid包,如果pip install sendgrid-python不可用,请执行easy_install sendgrid-pythonpip