首页 > 解决方案 > 如何在 jupyter notebook/lab 中构建一个简单的小部件或应用程序以交互地从文本中提取子字符串?

问题描述

我想遍历一个字符串列表,在 jupyter lab 中将字符串输出为纯文本,然后以交互方式突出显示一个子字符串以轻松获取子字符串的起始索引和长度。目标是对文本进行快速注释并获取子字符串的坐标。

使用 jupyter notebook (lab) 做这样的事情是否容易甚至可能?如果然后如何?

我查看了 ipywidgets,但找不到适合这个用例的东西。

标签: jupyter-notebookjupyterjupyter-labipywidgets

解决方案


这是 RangeSlider 的示例:

import ipywidgets
input_string = 'averylongstring'
widg = ipywidgets.IntRangeSlider(
    value = [0, len(input_string)],
    min=0, max=len(input_string)
)
output_widg = ipywidgets.Text()

display(widg)
display(output_widg)

def chomp_string(widg):

    start,end = tuple(widg['new'])
    output_widg.value = input_string[start: end]

widg.observe(chomp_string, names='value')

推荐阅读