有没有一种方法可以删除所有已删除的消息,然后再删除?

时间:2019-02-15 10:48:22

标签: python telegram-bot python-telegram-bot

在我的漫游器中,我编辑了大约3次相同的消息。最后,当我想删除最后一个时,我认为它将全部删除。但是它只是删除了最后编辑的消息。

有什么办法吗?因为我尝试使用多个delete_message,但是它保留在最后编辑的消息上...

执行示例

1. "First Message" 2. "Second Message" (edited) 3. "Third Message" (edited) 4. "Forth Message" (edited)

预期

No messages

实际结果

"Third Message"

1 个答案:

答案 0 :(得分:0)

您可以公正删除所有edited的消息:

也许是入门者:

test_list = ['1. First Message', '2. Second Message (edited)', 
             '3. Third Message (edited)', '4. Forth Message (edited)', 
             '5. Fifth Message (edited)']


for t in test_list[:]:
    print(t)
    if 'edited' in t:
        test_list.remove(t)    
print(test_list)

输出:

['1. First Message']

使用lambda的单线:

print(list(filter(lambda a: a != '(edited)', test_list[:])))