Skip to main content
 首页 » 编程设计

python之您如何确定该字符串是否是前一个字符串的组成部分

2025年05月04日20jyk

我正在尝试编写一个函数来查看字符串列表并确定列表中的下一个字符串是否是前一个字符串的子字符串。

所以如果我有一个列表 ['Ryan', 'Rya', 'Ry', 'Testing', 'Test']

我会回来的 ['Ryan', 'Rya', 'Ry', 'Test']。

我什至不确定从哪里开始。

请您参考如下方法:

你可以通过列表理解来完成这个

def find_results(seq): #I'm sure you can name this function better 
    return [seq[0]] + [current for previous, current in zip(seq, seq[1:])  
                       if current in previous] 

seq[1:] 是除第一个元素之外的整个列表

zip(a, b) 为您传递给它的每个可迭代对象生成元素对。在这种情况下,前面的字符串和当前字符串。

in 运算符将测试一个字符串是否在另一个字符串中。 “testing”中的“test”为真

理解说,对于每对字符串(当前和上一个),如果当前字符串是前一个字符串的子字符串,则构建所有当前字符串的列表