繁体   English   中英

导入的模块不导入

[英]Imported module does not import

我遇到了两个主要问题,当我在一个目录TwitterAnalyzer中拥有所有脚本时一切都很好,但是当我开始清理时。 出现了一些问题。

我必须将TwitterApi导入Analyzer模块。 我找到了解决方案,但我看起来很傻( if __name__ == '__main__' )。 否则导入在父模块_run_GUI_mode.py中不起作用

我还尝试制作一些__init__.py文件,它可以导入这两个东西,但它不起作用NameError: name 'TwitterApi' is not defined如何正确导入,这将允许我独立运行Analyzer 这个话题我不是很懂,可能有答案: Why does importing a python module not import nested modules?

我应该将所有脚本移回同一目录吗? 我将避免对tweets目录进行路径跟踪的额外工作。 Analyzer 正在后台下载推文。

# My Project Tree
.TwitterAnalyzer
    |---LICENSE
    |---README.md
    |---TwitterAnalyzer
        |---Analyzer
            |---Analyzer.py
            |---Readme.md
            |---secret_token.txt
            |---TwitterApi.py
            |---__init__.py
        |---GUI
            |---create_gui_py.py
            |---GUI.py
            |---GUI_QT.ui
        |---tweets
        |---_run_GUI_mode.py
# Analyzer\TwitterAnalyzer.py
# Grzegorz Krug

if __name__ == '__main__':  # this is my solution, but I do not like it
    from TwitterApi import TwitterApi, TwitterLoginFailed 
else:
    from Analyzer.TwitterApi import TwitterApi, TwitterLoginFailed


class TwitterAnalyzer(TwitterApi):
    def __init__(self, autologin=True, log_ui=None):
...

# _run_GUI_mode.py
# Grzegorz Krug

from Analyzer.TwitterApi import TwitterApi, TwitterLoginFailed  # <-- This does not work anyway
from Analyzer.Analyzer import TwitterAnalyzer
from GUI.GUI import Ui_MainWindow

class TwitterAnalyzerGUI(TwitterAnalyzer, Ui_MainWindow):
    def __init__(self, mainWindow):
...
# Analyzer/__init__.py
from TwitterApi import TwitterApi
from Analyzer import TwitterAnalyzer

__init__.py添加到 TwitterAnalyzer 目录

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM