2016-05-14 20 views
-1
display_list = ['display','screen'] 
water_list = ['wet','water','sink','Toilet'] 
crack_list = ['cracked','broke','broken'] 



for item in display_list: 
    if item in problem: 
     f_display = True 
for item in display_list and crack_list: 
    if item in problem: 
     f_screencrack = True 
for item in water_list: 
    if item in problem: 
     f_water = True 
elif f_screencrack == True: 
    print('You may need to replace your screen.') 
    print('Note that if the crack is too heavy, you may need a new phone.') 

に一つだけのリストまたは複数のものである場合は、ユーザーの答えがdisplay_listcrack_listの両方で見つけることができる場合、私は私のプログラムが別の答えを表示できるようにしたいと思いますが、私はしないでくださいノーハウ。項目のpython

答えて

1

in演算子を使用して、リストのメンバーシップをチェックすることができます。あなたがメンバーシップを確認するためにリストの多くを持っていた場合は、単に両方のリストのメンバーシップを確認し、ブールでそれらを組み合わせて、

if item in display_list and item in crack_list: 
    ... 

、あなたが

from operator import contains 

if all(contains(x, item) for x in [display_list, crack_list, other_list]): 
    ... 
0

もう少し手続きすることができ、私が使用してことがわかりましたif文が最初にうまくいきました

if item in display_list and item in crack_list: 
    for item in display_list and item in crack_list: 
     if item in situation: 
      f_scrcrack = True 
関連する問題