Python リストの要素を複数条件で削除したい


下記のリストを複数条件で削除していますが、他に簡潔な方法はないでしょうか。  
removeで値を指定して削除できるのは知っていますが、  
リストの要素毎回変化するので、リストの番号を指定してスライスの方法で削除しております。

毎回削除する際にdel 〇〇を指定しないといけないので、簡潔に削除できる方法があれば  
教えていただけますか。

お手数ですが、よろしくお願い致します。

リスト名  
＊リストの要素毎回変化します。

[code]

    list_a = ['ケーキ','りんご','アイス','みかん','どらやき','おはぎ']
    
[/code]

全体のコード

[code]

    # リスト
    list_a = ['ケーキ','りんご','アイス','みかん','どらやき','おはぎ']
    
    # 毎回スライスしたい値を指定
    del list_a[0:1]
    print(list_a)
    
    del list_a[4]
    print(list_a)
    
    del list_a[2]
    print(list_a)
    
    ['りんご', 'アイス', 'みかん', 'どらやき', 'おはぎ']
    ['りんご', 'アイス', 'みかん', 'どらやき']
    ['りんご', 'アイス', 'どらやき']
    
[/code]




削除したい要素が何かわかっている場合

[code]

    list_a = ['ケーキ','りんご','アイス','みかん','どらやき','おはぎ']
    del_item = 'ケーキ','みかん','おはぎ'
    list_a = [s for s in list_a if s not in del_item]
    print(list_a)  # ['りんご', 'アイス', 'どらやき']
    
[/code]

削除したい要素の番号が何かわかっている場合

[code]

    list_a = ['ケーキ','りんご','アイス','みかん','どらやき','おはぎ']
    del_idx = 0, 3, 5
    list_a = [s for i,s in enumerate(list_a) if i not in del_idx]
    print(list_a)  # ['りんご', 'アイス', 'どらやき']
    
[/code]




削除したい要素が何かわかっている場合

[code]

    list_a = ['ケーキ','りんご','アイス','みかん','どらやき','おはぎ']
    del_item = 'ケーキ','みかん','おはぎ'
    list_a = [s for s in list_a if s not in del_item]
    print(list_a)  # ['りんご', 'アイス', 'どらやき']
    
[/code]

削除したい要素の番号が何かわかっている場合

[code]

    list_a = ['ケーキ','りんご','アイス','みかん','どらやき','おはぎ']
    del_idx = 0, 3, 5
    list_a = [s for i,s in enumerate(list_a) if i not in del_idx]
    print(list_a)  # ['りんご', 'アイス', 'どらやき']
    
[/code]

