导入模块的返回值无效
我有一个Python文件,路径是(project_root/usermodule/user_controls.py),里面只有以下代码:
class UControl():
def login(self):
return 'John'
我还有一个类,路径是(project_root/main_file.py),它在引入上面的user_controls文件,里面也只有以下代码。
import os
from usermodule import user_controls
if __name__ == '__main__':
uc = user_controls.UControl()
login_response = uc.login()
if login_response == 'John':
print login_response
当我运行第二段代码时,虽然没有报错,但也没有任何输出(我本来希望它能输出'John')。
2 个回答
3
你问的问题里是不是有拼写错误,还是你程序里的问题:login_reponse
和 login_response
不一样。
如果我把这个错误改正,脚本在我电脑上就能顺利运行了。(你可能想用 class UControl(object):
来代替 class UControl():
)。
错误没有被打印出来,这说明你的代码根本没有运行。你是怎么调用它的呢?
另外,第二个文件其实也是一个模块(和第一个文件一样),并不是你在问题中说的那种类。
1
我发现有人遇到过类似的问题。我只是删除了那个文件,重新创建了一个新文件,把我之前的代码粘贴进去,然后编译和运行,结果一切都正常。看来是Eclipse在捣乱。谢谢大家关注,不过这个问题现在看起来解决了。