сопоставление строк из нескольких слов с помощью оператора if в python

#python #string #if-statement

#python #строка #if-statement

Вопрос:

Здесь у меня возник небольшой вопрос. Вводом является эта строка:

 configure vlan test bla bla
  

и он хранится в переменной строке в виде списка (через split()).

Если я оцениваю его на основе моего первого оператора if ниже, он завершается неудачей

  if ("configure" in line) and (" vlan" in line):
    print("create vlans");
  

Если я оцениваю его на основе следующего оператора if ниже, он завершается успешно.

 if ("configure vlan" in line):
    print("create vlans 2");
  

Почему это так? Я просто соединяю две строки вместе, но одна работает, а другая нет.

Спасибо

Комментарии:

1. Можете ли вы поделиться выводом print(line) ?

2. Оба работают для меня…

3. Есть ли шанс, что у вас действительно есть список, содержащий "configure vlan" ?

4.Потому что, хотя и "configure vlan" находится в списке, подстроки отсутствуют. Вам нужно будет проверить, содержат ли any строки в списке оба "configure" и " vlan" .

5. если вы использовали split для создания списка слов, то " vlan" их не было бы в списке. "vlan" было бы. (без пробела)