【发布时间】:2020-06-08 06:56:34
【问题描述】:
我正在寻找一种将字符串中的索引转换为索引所在单词的有效方法。
例如,如果这是我的字符串:
This is a very stupid string
我得到的索引是 10,所以输出应该是very。
此外,如果索引是 11,12 或 13 - 输出应该是 very。
可以假设单词每次被 1 个空格隔开。 用 for 循环或其他东西来做这件事并不难,问题是是否有更有效的方法(因为我的文本很大,而且我有很多索引可以转换为单词)。
例如,让索引为 10、13、16,因此输出应为:
10 very
13 very
16 stupid
任何帮助将不胜感激!
【问题讨论】:
-
循环有什么问题?您只需直接转到您的位置并左右移动,直到当前字符为空格。如果字符串中只有一个长度为 n 的单词,复杂度为 O(n)
-
如果
index=4不在单词中,会发生什么情况? -
大量文本是否已经全部在内存中,还是必须从流中处理?
-
@JonClements - 好点。假设它不会发生
-
你能否建立一个字母是空格的索引列表,然后
bisect那个?
标签: python arrays string pandas