リスト内の要素をフィルタリングすることを探しています。
たとえば、リストがあるとします。
listA = ['banana', 'apple', 'appleRed', 'melon_01', 'appleGreen', 'Orange', 'melon_03']
listB = ['apple', 'melon']
次に、リストを比較して、listBで始まる要素名のみを含むリストを作成する必要があります。
結果は次のようになります。
listResult = ['apple', 'appleRed', 'melon_01', 'appleGreen', 'melon_03']
これは、2forループとifループ比較を使用して行うことができます。お気に入り、
for item in listA:
for fruit in listB:
if item.startswith(fruit):
listResult.append(item)
break
ただし、ビッグリストの比較には時間がかかる可能性があるため、この操作に使用できるショートカットはあるのでしょうか。