如何从 IDE 运行/调试 Streamlit 应用程序

2024-01-09

我真的很喜欢 Streamlit 作为研究环境。混合笔记本/仪表板式的输出,我可以使用纯代码快速设计其定义(无单元等),并且能够在运行时通过小部件影响我的代码,这是一个游戏规则改变者。

为此,我正在寻找一种运行甚至调试 Streamlit 应用程序的方法,因为教程仅显示它是通过命令行启动的:

streamlit run code.py

有没有办法从 IDE 进行运行或调试?


我找到了一种至少可以从 IDE 运行代码的方法(在我的例子中是 PyCharm)。这streamlit run code.py可以直接从 IDE 调用命令。 (这streamlit run code.py命令实际上调​​用python -m streamlit.cli run code.py,这是以前从 IDE 运行的解决方案。)

The -m streamlit run goes into the interpreter options field of the Run/Debug Configuration (this is supported by Streamlit, so has guarantees to not be broken in the future1), the code.py goes into the Script path field as expected. In past versions, it was also working to use -m streamlit.cli run in the interpreter options field of the Run/Debug Configuration, but this option might break in the future.

不幸的是,这种方式的调试似乎不起作用,因为 PyCharm 附加的参数被传递给 Streamlit 而不是 pydev 调试器。

Edit: Just found a way to debug your own scripts. Instead of debugging your script, you debug the streamlit.cli module which runs your script. To do so, you need to change from Script path: to Module name: in the top-most field (there is a slightly hidden dropdown box there...). Then you can insert streamlit.cli into the field. As the parameters, you now add run code.py into the Parameters: field of the Run/Debug Configuration. Run/Debug configuration shown here

编辑:添加 @sismo 的评论

如果您的脚本需要使用一些参数运行,您可以轻松地将它们添加为

run main.py -- --option1 val1 --option2 val2

注意第一条--带空白:需要停止流式参数解析并传递给main.py参数解析。


1 https://discuss.streamlit.io/t/run-streamlit-from-pycharm/21624/3 https://discuss.streamlit.io/t/run-streamlit-from-pycharm/21624/3

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从 IDE 运行/调试 Streamlit 应用程序 的相关文章

随机推荐

  • Android Studio 中的 ndk.dir 错误

    我试图使用 opencv 库 因此我在 Android Studio 中导入了它的一个项目 当我尝试运行它时 出现了此错误 错误 任务 openCVSamplefaceDetection compileDebugNdk 执行失败 NDK 未
  • 通用命令处理程序的简单注入器用法

    接口 命令和命令处理程序按照 Simpleinjector wiki 中的说明进行设置 public interface ICommand string Name get set public class Command1 ICommand
  • 通过 GET 方法对 SAML Authn 请求进行签名验证失败

    我正在发送一个SIGNED使用 c 和 asp net 向 idp 发出 authnRequest 我的代码对 authnRequest 进行签名 但签名验证在 idp 处失败 Details 我尝试了很多解决方案但没有成功 这就是我正在遵
  • 在 Swift Xcode 中使用其他文件中的函数

    如何在单独的 swift 文件中编写函数并将其使用 导入 到我的 ViewController swift 文件中 我已经编写了很多代码 所有代码都在 ViewController swift 文件中 我确实需要使其看起来不错并将函数放在单
  • C# 在类构造函数中分配类属性有什么好处吗?

    例如 如果我有一个这样的课程 namespace Sample public Class TestObject private Object MyAwesomeObject new MyAwesomeObject 像这样在构造函数中设置属性
  • Spring security 打开弹出登录

    当用户执行需要验证的操作而他不需要验证时 有人知道如何打开弹出登录进行验证 使用 Spring Security 例如 假设该页面有一个 立即购买 按钮 如果用户已经通过身份验证 则将产品添加到购物车并执行结账 立即购买页面 或者打开一个弹
  • Python 装饰器让函数忘记它属于一个类

    我正在尝试编写一个装饰器来进行日志记录 def logger myFunc def new args keyargs print Entering s s myFunc im class name myFunc name return my
  • 从 MVC 控制器获取 JSON 对象

    我想要的是在对跨域进行 Ajax 调用时保护我的开发人员密钥 在此之前 我会直接访问该网址并插入我的密钥 像这样 ajax url https na api pvp net api lol na v2 3 team TEAM ID api
  • head 标签中的内联代码 - ASP.NET

    是否可以在具有 runatserver 的母版页的 head 标签中执行类似的操作 这是行不通的 因为它会生成这种 html 输出呈现如下的原因 href lt Config ResourcesDomain gt images style
  • 使用可选解析器从 joda-time DateTimeFormatter 打印

    在使用 joda time 2 1 的项目中 我有以下内容DateTimeFormatter Parser for the fraction part of a date time value private static final Da
  • 获取从 SQL Server 上的 SSIS 包执行的 SQL 查询

    我构建了一个自定义作业日志框架 用于记录 SSIS 包中执行的所有任务以及出现的任何错误 完成后 要求进行增强以存储 SSIS 包在 SQL Server 上执行的任何 SQL 查询 这不仅限于执行 SQL 任务 它们还会查找包运行的任何
  • Element UI 和字体非常棒

    谁能解释一下是否可以在 Element UI 中使用 font awesome 或其他大图标字体 我看过常见问题解答 但无法让它为我工作 https github com ElemeFE element blob dev FAQ md ht
  • 在 Azure 函数中初始化 AutoMapper

    我正在尝试创建一个 Azure 函数 在其中使用 AutoMapper 的一些代码 我对 C Azure 和 AutoMapper 相当陌生 在寻找初始化 AutoMapper 配置的正确方法时遇到了一些困难 MapInitializer
  • ObjectDataSource 选择方法无法“查看”任何其他控件的值

    我什至不知道如何清楚地表达这一点 而且代码太多 无法全部粘贴到这里 让我从一般性描述开始 也许它会敲响警钟 我有一个使用 ObjectDataSource 的 DataGrid 由于需要两个日期选择器来过滤结果 ObjectDataSour
  • MongoDB 选择不同的和其中

    所以我正在做一个选择不同的工作 但我还想添加另一个键 data this gt db gt command array distinct gt scores key gt target user 我需要这样的东西 SELECT DISTIN
  • 使用 VSCode 调试 Electron 渲染器进程

    I tried 这个文件 https github com Microsoft vscode recipes tree master Electron 但是遇到了问题 我一张一张地浏览了指南 一切都很好 直到 1 将renderer js的
  • git:谁推入了 post-receive 挂钩

    如何确定谁推送到存储库 IE 有人这样做git push origin master并在 post receive 挂钩中originrepo 我需要使用某人的姓名或电子邮件 如果您使用 SSH 协议将更改推送到服务器 并且每个用户在服务器
  • 显示 UILabel 的文本

    继iOS 编程 大书呆子牧场指南 第六版的指南 我尝试使用 swift 制作一个测验项目 ViewController 代码在这里 import UIKit class ViewController UIViewController IBO
  • Java中的垃圾收集器是什么?

    我是 Java 新手 对 Java 中的垃圾收集器感到困惑 它实际上有什么作用以及何时发挥作用 请描述Java中垃圾收集器的一些属性 The 垃圾收集器 http en wikipedia org wiki Garbage collecti
  • 如何从 IDE 运行/调试 Streamlit 应用程序

    我真的很喜欢 Streamlit 作为研究环境 混合笔记本 仪表板式的输出 我可以使用纯代码快速设计其定义 无单元等 并且能够在运行时通过小部件影响我的代码 这是一个游戏规则改变者 为此 我正在寻找一种运行甚至调试 Streamlit 应用