根据条件合并列表中的项

2024-09-27 00:21:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个列表,如下所示:

a = ["/n abc", "def", "ghi", "/n jkl", "mno", "/n pqr", "/n stu"]

我希望它看起来像这样:

a = ["abcdefghi", "jklmno" "pqr" "stu"] 

本质上,我希望代码做的是将列表中的项与下面的项按顺序合并,直到它遇到具有子字符串“/n”的元素。它应该对整个列表执行此操作,然后删除子字符串的所有实例“/n”


Tags: 字符串代码元素列表顺序defjklabc
3条回答
result = [i.strip() for i in ''.join(a).split('/n') if i]

但是,您应该先发布您的尝试

以下是我的尝试:

res = []
s = ""
for i in l:
    if i.startswith("/n"):
        if s:
            res.append(s)
        s = i[3:]
    else:
        s+=i
if s:
    res.append(s)
print(res)

一种基本方法(不使用特殊方法):

result = []
i = 0
index = 0
while i < len(a):
    if a[i][:2] == '\n':
        index += 1
    result[index] += a[i]

如果我做错了什么,请纠正我(我已经很久没有使用Python了)

相关问题 更多 >

    热门问题