【问题标题】:No module named streamlit.__main__; ‘streamlit’ is a package and cannot be directly executed没有名为 streamlit.__main__ 的模块; ‘streamlit’是一个包,不能直接执行
【发布时间】:2020-04-08 04:34:36
【问题描述】:

当我尝试将 streamlit 部署到 heroku 时,出现以下错误。我该如何解决?

没有名为 streamlit.main 的模块; ‘streamlit’是一个包,不能直接执行

【问题讨论】:

    标签: streamlit


    【解决方案1】:

    streamlit 命令位于您的 virtualenv 的 bin/ 文件夹中。看起来pipenv run 没有在该文件夹中查找,而是在找到名为 streamlit 的 ,并尝试执行它。

    如果没有看到您的 Heroku 部署的详细信息,很难提供解决此问题的具体建议。但从您的屏幕截图来看,您似乎是在 pipenv 外壳中执行此命令。由于您已经在 shell 中,您不需要使用pipenv run streamlit run ... 来运行streamlit 命令;激活 shell 意味着 streamlit 命令已经在你的 $PATH 上。

    当你激活了 shell 时,这样做应该可以代替:

    streamlit run iris_eda_app.py
    

    或者,您可以放弃 pipenv 并直接管理您的 virtualenv。我整理了一个可部署到 Heroku 的 Streamlit 应用程序的最小工作示例。它使用普通的requirements.txt 文件而不是Pipfilehttps://github.com/tconkling/streamlit_heroku_example

    【讨论】:

      【解决方案2】:

      这对你也有用..python -m streamlit.cli iris_eda_app.py

      【讨论】:

        【解决方案3】:

        我试过了,这对我有用:

        python -m streamlit.cli run path/to/your/app.py
        

        【讨论】:

          猜你喜欢
          • 2021-06-12
          • 2017-11-16
          • 1970-01-01
          • 2020-06-26
          • 1970-01-01
          • 2022-10-18
          • 2021-08-22
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多