2017-11-16 3 views
0
x = 'a' 
list = ['ab','cd','a'] 
if x in list: 
    print(list.index(x)) 

ここで、 'a'を含むリストのすべての値を見つけようとします。しかし、 'in'メソッドでは、 'ab'のような 'a'を含むのではなく、 'a'という値しか見つけることができません。効率的な方法がありますか?おかげPythonリストの部分キーワードを見つける

+0

'if'後にコードでの間隔を編集してください。!! –

+0

リストを反復するだけです。また、組み込み関数を変数として使用しないようにします。つまり、 'list'を' lst'または 'list_'に変更します。 – pylang

答えて

1

はそれを成し遂げるためにリスト内包が必要 -

x = 'a' 
list_ = ['ab','cd','a'] 
filtered_list = [elem for elem in list_ if x in elem] 
print(filtered_list) 

出力 -

['ab', 'a'] 
1

あなたは、このためのループのための単純なを使用することができます。 List内の各要素について、xがその要素の部分文字列であるかどうかを確認してください(in)。それが真であれば、その要素を表示します。

あなたは...このようにPythonでそれを行うことができます

x = 'a' 
list = ['ab','cd','a'] 

for element in list: 
    if x in element: 
     print(element) 

Output 
ab 
a 
関連する問題