【发布时间】:2025-07-14 11:10:01
【问题描述】:
假设你有一个字符串:
text = "coding in python is a lot of fun"
以及人物位置:
positions = [(0,6),(10,16),(29,32)]
这些是区间,涵盖文本中的某些单词,即分别为编码、python 和 fun。
使用字符位置,你怎么能分割那些单词上的文本,以获得这个输出:
['coding','in','python','is a lot of','fun']
这只是一个例子,但它应该适用于任何字符串和任何字符位置列表。
我不是在找这个:
[text[i:j] for i,j in positions]
【问题讨论】:
-
你知道你可以使用像
text[0:5](一个“字符串切片”)这样的东西吗? -
因为您要在字符位置指定的范围内的单词上拆分文本。您没有在每个范围内创建文本列表,这将为 3 个字符位置范围中的每一个返回 3 个字符串。这就像我想要 text.split(在字符范围列表上)
-
字符位置和字符串有什么关系?根据预期的输出看起来它们是不相关的
-
字符位置给出了
text中“coding”、“python”和“fun”这几个词的开始和结束位置