在GAE中导入类(Python)

时间:2012-02-01 14:27:09

标签: python google-app-engine

我知道这是一个非常愚蠢的问题。而这一切都与基础知识有关。 但不幸的是,我的时间非常短,现在无法阅读Python书。

我有这个问题。 那么在GAE你是一个root main.py脚本。

我有两个存储在以下的类: HTMLParser的/ HTMLParser的 的HTMLParser / BfsHTMLParser

我无法将它们导入main.py

我做错了什么?

我在做:

import htmlparser

但我抓住了:

  

NameError:未定义全局名称“BfsHTMLParser”

非常感谢任何帮助。谢谢。

P.S。我也很感激任何有关Python基础知识的书籍建议:)

3 个答案:

答案 0 :(得分:1)

from htmlparser import HTMLParser, BfsHTMLParser

编辑我担心这是非常基本的Python内容,如果不阅读Python教程,你就不会走得太远。 Python不是Java,这里的问题是你导入了模块,而不是类 - 在Python中它们不是同一个东西。

如果您的类名称与模块文件相同,那么现在您已导入模块,您需要通过HTMLParser.HTMLParserBfsHTMLParser.BfsHtmlParser对其进行实例化。当然,你真的不应该打包这样的课程,但这就是你的情况。

答案 1 :(得分:0)

你在htmlparser目录中有__init__.py吗?

答案 2 :(得分:0)

好的,目前我切换到BeautifulSoup 将BeatifulSoup放在root中,它正在工作。

但是打包逻辑代码块的问题仍然存在。