【问题标题】:How to structure package for streamlit如何为 streamlit 构建包
【发布时间】:2021-05-20 10:29:03
【问题描述】:

全部,

我正在尝试找出构建我的包的最佳方式,以便能够在我的包中构建流线型应用程序。在设置结构时,我尝试使用不同的资源,例如 (https://docs.python-guide.org/writing/structure/),它在很大程度上工作正常,直到我尝试开始添加流式应用程序。解释我的问题的最接近的示例在这里 ('Attempted relative import in non-package' although packages with __init__.py in one directory)

这是我的包的高级概述:

Package_Name
    docs
    examples
    toolbox 
       tool_1.py
       tool_2.py 
       tool_1_app.py
       utils.py 
       enumerations.py 
    tests 
       test_tool_1.py
       test_tool_2.py 
    configuration.py 
    environment.yml 
    README.md 

直到,我尝试了 tool_1_app.py,它是流光应用程序,一切正常。但是,当我启动tool_1_app.py 时,我得到一个ModuleNotFoundError,表明toolbox 不在路径中。我可能可以使用sys.append('../') 添加路径,但是,我想了解如何通过更好地构建我的包来避免这种情况。任何帮助表示赞赏。

谢谢

【问题讨论】:

  • 你的__init__.py呢?

标签: python python-3.x streamlit


【解决方案1】:

我认为,如果您从项目的根目录启动 Streamlit 并提供脚本的相对路径,那么您的所有子模块都会被找到(作为当前工作目录的子目录):

cd Package_Name
streamlit run toolbox/tool_1_app.py

【讨论】:

  • 感谢您的回复。刚试了一下。仍然遇到同样的错误。
猜你喜欢
  • 1970-01-01
  • 2020-03-31
  • 1970-01-01
  • 1970-01-01
  • 2021-08-19
  • 2022-08-20
  • 2020-09-24
  • 1970-01-01
  • 2020-04-08
相关资源
最近更新 更多