2番目のリストに含まれているリストのすべての外側要素を削除していますが、内側に「サンドイッチ」している要素は削除します。私は2つのセットの交差点を補完する方法を知っていますが、ここでは始めと終わりの要素をすべて削除したいだけです。これまでのところ私は、次のように作ってみたが、それは不格好な感じ:他のリストに含まれているリストから外側の要素を取り除く
def strip_list(l, to_remove):
while l[0] in to_remove:
l.pop(0)
while l and l[-1] in to_remove:
l.pop(-1)
return l
mylist = ['one', 'two', 'yellow', 'one', 'blue', 'three', 'four']
nums = ['one', 'two', 'three', 'four']
strip_list(mylist, nums)
# > ['yellow', 'one', 'blue']
'設定(my_listという) - セット(NUMS)'? – sytech
削除される@sytech残っている重複も削除します – Uriel
重複している可能性があります[あるリスト内に存在するすべての要素を別のリストから削除します](http://stackoverflow.com/questions/4211209/remove-all-the-elements-それ以外のものからのリスト) – damores