python,for 循环和列表追加

python, for loop and list append

我正在尝试提取字符串的一部分并将其附加到列表(消息)中。 但最后,我看到的只是列表中附加的一项(最后一项)。下面是我的代码。 我做错了什么?

for item in all_text:
    message = []
    if len(item) < 2:
        continue
    else:
        m_temp = item.split(']')[1].split(':')
        if len(m_temp) <= 1:
            continue
        else:
            message.append(m_temp[1])
    print(len(message))
    print(message)

您将 message 重新定义为一个空列表,每次迭代 for 循环。因此,除了最后一次迭代的那个之外,你以前的所有追加都将丢失。

尝试将 message = [] 移动到 for 循环之前。

message = []移动到for循环上方,并将两个打印与For

对齐