2016-05-14 78 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被發現,但我不知識。察看項目僅在一個列表或蟒蛇多者

回答

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