示例:我有以下GRadio用户界面:

import gradio as gr

def dummy(a):
    return 'hello', {'hell': 'o'}

with gr.Blocks() as demo:
    txt = gr.Textbox(value="test", label="Query", lines=1)
    answer = gr.Textbox(value="", label="Answer")
    answerjson = gr.JSON()
    btn = gr.Button(value="Submit")
    btn.click(dummy, inputs=[txt], outputs=[answer, answerjson])
    gr.ClearButton([answer, answerjson])

demo.launch()

enter image description here

如何更改代码,以便在答案和JSON框之间显示"提交"和"清除"按钮,即:

enter image description here

我不能只将第gr.ClearButton([answer, answerjson])行移到answerjson = gr.JSON()之前,因为answerjson需要在gr.ClearButton([answer, answerjson])中定义.

推荐答案

您可以在初始化后add the components of clear button.这样,您就能够分离组件创建顺序:

import gradio as gr


def dummy(a):
    return "hello", {"hell": "o"}


with gr.Blocks() as demo:
    txt = gr.Textbox(value="test", label="Query", lines=1)
    answer = gr.Textbox(value="", label="Answer")
    btn = gr.Button(value="Submit")
    clear_btn = gr.ClearButton()
    answerjson = gr.JSON()
    
    btn.click(dummy, inputs=[txt], outputs=[answer, answerjson])
    clear_btn.add([answer, answerjson])

demo.launch(share=True)

Python相关问答推荐

如何使用它?

cv2.matchTemplate函数匹配失败

Python逻辑操作作为Pandas中的条件

如何合并两个列表,并获得每个索引值最高的列表名称?

网格基于1.Y轴与2.x轴显示在matplotlib中

语法错误:文档. evaluate:表达式不是合法表达式

有没有办法让Re.Sub报告它所做的每一次替换?

Python协议不兼容警告

Polars表达式无法访问中间列创建表达式

用来自另一个数据框的列特定标量划分Polars数据框中的每一列,

如何在Python中从html页面中提取html链接?

Polars时间戳同步延迟计算

如何在python tkinter中绑定键盘上的另一个回车?

无法使用请求模块从网页上抓取一些产品的名称

某些值的数值幂和**之间的差异

按最大属性值Django对对象进行排序

安装PyTorch时出现CondaVerificationError

提取子数组,然后在Python中将它们连接起来

Python:打开名称中带有最新时间戳的特定文件

属性错误:';Styler';对象没有属性';样式';