2016-05-14 54 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