1

基本的に私がそれをどのようにしたいかは、次のとおりです。

  • 文字列にリストの文字列/アイテムの1つが含まれているかどうかを確認するループ。基本的に、「リストの現在のインデックスが検索時にtrueを返す場合は、そのアイテムを文字列として新しいリストに追加します」

別の投稿の例:

some_list = ['abc-123', 'def-456', 'ghi-789', 'abc-456']
for any("abc" in s for s in some_list):
    #s isn't the index, right?

さて、問題は基本的に、私が上記をどのように行うかです。私の貧弱なフォーマットと英語などでごめんなさい。

例:

私は文字列を持っています "La die la Blablabla and flowers are red"

私は配列TheArrayを持っています、['Blablabla', 'thisonewillnotbefound', 'flowers', 'thisonenoteither', 'red']

そして、配列内のすべてのアイテムを通過するループが必要です。ループ内に存在するアイテムが見つかると、完全に新しいリストに追加されます。

4

1 に答える 1

10

これにより、テキスト内で単語が見つかったリストのインデックスのリストが表示されます

>>> text = 'Some text where the words should be'
>>> words = ['text', 'string', 'letter', 'words']
>>> [i for i, x in enumerate(words) if x in text]
[0, 3]

enumerateイテレータを取得し、最初の要素が0から始まるインデックスで、2番目の要素が渡されたイテレータの要素であるタプルを持つ別のイテレータを提供します。

[i for i, x in ...]list comprehensionforループを書くための短い形式です

于 2013-03-15T20:39:35.087 に答える