gpt4 book ai didi

python - Jupyter Ipywidgets - 如何在重新打印输出之前清除单元格输出

转载 作者:行者123 更新时间:2023-12-01 01:18:55 27 4
gpt4 key购买 nike

在 Jupyter 笔记本中使用 Python 3.7,下面的代码显示了一个文本输入字段,该字段触发 handle_submit 函数打印出一些输出。在此示例中,输入重复 40 次。

from ipywidgets import widgets
from IPython.display import display

text = widgets.Text()
display(text)

def handle_submit(sender):
print('\n'.join([text.value] * 40 ))

text.on_submit(handle_submit)

运行此代码会显示一个文本框。

如果在框中输入文本并按 Enter 键,则会运行handle_submit 函数并打印“结果”。

这可以多次使用,但所有旧的输出都会保留。因此,在使用输入字段几次后,您需要无休止地滚动才能获得新结果。

在从handle_submit函数打印新输出之前是否有命令清除单元格输出?与此示例不同,输出长度不固定,因此解决方案应处理不同大小的输出。

最佳答案

通过创建输出小部件,您可以像单元格输出一样打印到此小部件。您还可以选择在上下文管理器中调用 clear_output() 来清除输出。

我已经对此进行了编码,以便每次提交新输入时都会清除输出,但是您没有理由不能连接按钮来运行 clear_output() 来手动执行此操作.

from ipywidgets import widgets
from IPython.display import display, clear_output

text = widgets.Text()
display(text)
output = widgets.Output()
display(output)

def handle_submit(sender):
with output:
clear_output()
print('\n'.join([text.value] * 40 ))

text.on_submit(handle_submit)

关于python - Jupyter Ipywidgets - 如何在重新打印输出之前清除单元格输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54029719/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com