python - 在Python中递归地合并字符串列表中的连续元素

标签 python string recursion

我有一个字符串列表,需要将其转换为较小的字符串列表,具体取决于两个连续元素是否属于同一短语。 目前,如果第 i 个字符串的最后一个字符较低且第 i+1 个字符串的第一个字符也较低,则会发生这种情况,但是将来应该检查更复杂的条件。

例如这段非常深刻的文字:

['I am a boy',
'and like to play'
'My friends also'
'like to play'
'Cats and dogs are '
'nice pets, and'
'we like to play with them'
]

应该变成:

['I am a boy and like to play', 
 'My friends also like to play',
 'Cats and dogs are nice pets, and we like to play with them'
]

我的Python解决方案

最佳答案

我认为您发布的数据是用逗号分隔的。如果是pfb则简单的循环解决方案。

data=['I am a boy',
'and like to play',
'My friends also',
'like to play',
'Cats and dogs are ',
'nice pets, and',
'we like to play with them'
]

required_list=[]

for j,i in enumerate(data):
    print(i,j)
    if j==0:
        req=i
    else:
        if i[0].isupper():
            required_list.append(req)
            req=i
        else:
            req=req+" "+i
required_list.append(req)


print(required_list)    

关于python - 在Python中递归地合并字符串列表中的连续元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62287077/

相关文章:

python - 当一列是日期时间而另一列是对象时,如何连接/合并 Pandas 中的两列?

python - 如何使用 Python 迭代标签?

python - 支持向量回归多输出

c:带有strut和array的字符串输入

c - 替换功能中的内存管理

python - TypeError: 'int' 对象不支持项目分配

java - Java中String类的垃圾回收

c++ - String & 没有反射(reflect)所做的更改但是 String 确实……在传递参数时?

c# - 如何在游戏中拥有局部位置和全局位置

python - 为什么我的递归函数返回 "None"?