私はfor
ループを使用して、文字列のリスト内の各要素の部分文字列を別の文字列リストの要素と比較します。forループをリスト内包語に変換する
mylist = []
for x in list1:
mat = False
for y in list2:
if x[:-14] in y:
mat = True
if not mat:
mylist.append(x)
しかし、私はリスト内包に入れたい(ループが私の好みのためとして、簡潔でないため)しかしmat
の計算でそれを行うための方法を見つけることができません。
私は上のバリエーションを試してみました:
mylist = [x for x in list1 if x[:-14] in list2]
しかし、これは元のループと同じロジックではありません。元のforループをリストの理解に改革する方法はありますか?それが書かれているとおり
ん
if not
条件に直接その定義を移動すると(このケースでは、あなたは
any
を使用します)これはコンバージョンサービスではありません。あなたがこれを試してどこかでつかまえたら、[mcve]を提供してください。すべての 'for'ループがリスト内包となるわけではないことにも注意してください。 – jonrsharpe私は序文を編集しました。なぜなら、メタコンテンツは質問には属しておらず、人々はあなたに回答/リンクを与えるか否かにかかわらず、下降表示することができます。それはまったくのことではありません*「明らかにこれは質問されてより広い範囲の問題に適用できるようになっている」* **あなた自身の努力なしに、代わりに。 – jonrsharpe
私はこのサイトで試した他のすべてのものへのリンクを提供しますか?それがあなたの声明になるでしょう。これは質問に答えるよりも、私が試したことを証明するために多くの努力を費やしている簡単な質問です。非常に不条理な反応...私は少なくとも30分の検索と試して投稿する前にしようとした – user3496060