示例:我有以下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相关问答推荐

三个给定的坐标可以是矩形的点吗

从webhook中的短代码(而不是电话号码)接收Twilio消息

Python daskValue错误:无法识别的区块管理器dask -必须是以下之一:[]

未删除映射表的行

如何在Windows上用Python提取名称中带有逗号的文件?

按列分区,按另一列排序

在Pandas DataFrame操作中用链接替换'方法的更有效方法

聚合具有重复元素的Python字典列表,并添加具有重复元素数量的新键

如何从pandas的rame类继承并使用filepath实例化

如何设置视频语言时上传到YouTube与Python API客户端

导入...从...混乱

在单个对象中解析多个Python数据帧

SQLAlchemy bindparam在mssql上失败(但在mysql上工作)

使用Python异步地持久跟踪用户输入

如何获得3D点的平移和旋转,给定的点已经旋转?

Js的查询结果可以在PC Chrome上显示,但不能在Android Chrome、OPERA和EDGE上显示,而两者都可以在Firefox上运行

在Django中重命名我的表后,旧表中的项目不会被移动或删除

查找查找表中存在的列值组合

迭代工具组合不会输出大于3的序列

如何在Polars中处理用户自定义函数的多行结果?