如何使用python导入函数

时间:2010-08-07 09:20:52

标签: python google-app-engine function

我正在为GAE开发一个Python应用程序。

该应用程序由一组类和函数组成,这些类和函数目前都在同一个文件main.py中。

应用程序正常运行。

现在,我想重构应用程序并将所有类外包出去。每个班级都应该在她自己的档案中。文件应安排在如下目录中:

main.py
/directory1/class1.py
/directory1/class2.py
/directory2/class1.py

我的问题是在这些外包类中,我不能使用main.py的功能。

我在类文件中尝试了这个。

from main import name_of_function

但是编译器说

    from main import name_of_function
ImportError: cannot import name name_of_function

我错了什么?

funktion的名称是登录。也许这会导致问题?

2 个答案:

答案 0 :(得分:2)

尝试将main.py中的额外函数移动到单独的文件中。

main.py
library.py # contains login() and other functions from main
/directory1/class1.py
/directory1/class2.py
/directory2/class1.py

答案 1 :(得分:0)

有时候将同一个模块中的类放在一起,如果它们属于一起,就没有目的,这是很好的。

使用main函数的问题表明你应该重构一个模块,将common_utils.py从这些函数中分离出来并将它与main分开。您可以将其导入到使用它们的模块中。不要认为课程只考虑整个用例。

如果您可以给出程序逻辑的伪代码,我们可以更好地检查重构。