2015-06-16 1 views
0

Я хочу использовать, если условие для элементов данного списка:Если кондиционирования небольшой список в Python

list = ['apple','banana','carrot'] 

for i in list: 
    if i == 'apple' or 'banana': ##Here is problem! 
     print i, 'pass' 

В результате неправильно:

apple pass 
banana pass 
carrot pass 

Оно должно быть:

apple pass 
banana pass 

Отсутствие элементов, подлежащих проверке в моей проблеме, является большим, поэтому вы ищете лучший способ его обработки.

+2

', если я == 'яблоко' или я == 'банан':', кажется, я видел эти тип вопросов 100 раз. –

+0

@AvinashRaj Я хочу укоротить его, когда те, которые тестируются, являются большими – jean

+1

'if i in ['apple', 'banana', 'something else', '...']' should Покажи фокус. – soon

ответ

2

Проблема заключается в строке -

if i == 'apple' or 'banana': 

Вы проверяете, если i == 'apple' или если 'banana' верно. Все строки являются истинными, так что если вы -

if 'banana': 

Он всегда будет оценивать истинно, и, следовательно, вы получаете вопрос всех значений получения распечатаны.

Вам нужно сделать -

if i == 'apple' or i == 'banana': 

Или вы также можете сделать -

if i in ['apple','banana']: 
Смежные вопросы