Пример-1: найти один элемент в списке с помощью 'в' оператор
Следующий скрипт показывает, как можно легко найти любой элемент в списке, используя 'в' оператор без использования цикла. Список названий цветов определен в скрипте, и имя цветка будет принято как ввод от пользователя для поиска в списке. Если оператор используется с 'в' оператор, чтобы найти имя входного цветка в списке.
#!/ usr / bin / env python3# Определить список цветов
flowerList = ['роза', 'нарцисс', 'подсолнух', 'мак', 'колокольчик']
# Взять название цветка, который вы хотите искать в списке
flowerName = input ("Введите название цветка:")
# Поиск элемента с помощью оператора 'in'
если flowerName.lower () в цветочном списке:
# Распечатать сообщение об успешном завершении
print ("% s находится в списке"% (flowerName))
еще:
# Распечатать сообщение о не найденном
print ("% s не найден в списке"% (flowerName))
Выход:
Вывод показывает Нарцисс существует в списке и Лили нет в списке.
Пример-2: найти элемент с помощью метода индекса
Еще один простой способ найти определенный элемент в списке с помощью метода индекса. Следующий сценарий показывает использование индекс() метод поиска элемента в списке. Этот метод возвращает действительную позицию индекса, если конкретный элемент найден в списке, в противном случае он сгенерирует ValueError если вы хотите сохранить позицию в переменной. попытка блок напечатает сообщение об успехе, если индекс() метод возвращает допустимое значение позиции на основе значения поиска. Исключение блок напечатает сообщение об ошибке, если элемент поиска не существует в списке.
#!/ usr / bin / env python3пытаться:
# Определить список книг
bookList = ['Кот в шляпе', 'Гарольд и фиолетовый мелок',
«Очень голодная гусеница», «Спокойной ночи, Луна», «Гарольд и фиолетовый мелок»]
# Возьмите название книги, которую хотите найти в списке
bookName = input ("Введите название книги:")
# Поиск элемента с помощью метода индекса
search_pos = int (список книг.index (bookName))
# Распечатать найденное сообщение
print ("% s книга найдена в списке"% (bookName))
кроме (ValueError):
# Распечатать сообщение о не найденном
print ("% s книга не найдена в списке"% (bookName))
Выход:
Вывод показывает 'Доброй ночи луна' существует в списке и 'Чарли и шоколадная фабрика' нет в списке.
Пример-3: Найдите несколько индексов в списке
Как найти отдельный элемент в списке показано в двух предыдущих примерах. Следующий скрипт показывает, как вы можете искать все элементы списка внутри другого списка. В этом скрипте используются три списка. selectedList основной список, в котором элементы searchList будут обысканы. foundList здесь используется для хранения тех элементов, которые находятся в selectedList после поиска. Первое для цикл используется для генерации foundList а второй для цикл используется для итерации foundList и отобразить вывод.
#!/ usr / bin / env python3# Определить список выбранных лиц
selectedList = ['София', 'Изабелла', 'Оливия', 'Алексендра', 'Белла']
# Определить список ищущих людей
searchList = ['Olivia', 'Chloe', 'Alexzendra']
# Определить пустой список
foundList = []
# Итерировать каждый элемент из выбранного списка
для индекса sList в перечислении (selectedList):
# Сопоставьте элемент с элементом searchList
если sList в searchList:
# Сохраните значение в foundList, если совпадение найдено
foundList.добавить (selectedList [индекс])
# итерация searchList
для val в searchList:
# Проверяем, существует ли значение в foundList
если val в foundList:
print ("% s выбран.\ n "% val)
еще:
print ("% s не выбран.\ n "% val)
Выход:
Следующий вывод появится после запуска слова.
Пример-4: найти элемент с помощью пользовательской функции
Если вы хотите найти элемент в списке несколько раз, лучше использовать собственный метод поиска вместо того, чтобы писать поисковый скрипт несколько раз. В следующем сценарии показано, как найти любое значение в списке с помощью настраиваемой функции с именем findElement. Функция вернет Правда если список содержит элемент поиска, в противном случае возвращает Ложь.
#!/ usr / bin / env python3# Определить список еды
food = ['пицца', 'торт', 'клубника', 'шоколад', 'жареный цыпленок', 'манго']
# Взять название еды у пользователя
search = input ('Введите свою любимую еду:')
# Определить пользовательскую функцию для поиска элемента в списке
def findElement (listName, searchElement):
# Прочитать список с помощью цикла
для значения в listName:
# Проверяем, что значение элемента равно поисковому значению или нет
если значение == searchElement:
вернуть True
# Возвращаем false, если совпадений не найдено
вернуть ложь
# Вызвать функцию с именем списка и значением поиска
если findElement (еда, поиск.ниже()):
print ("% s найден"% search)
еще:
print ("% s не найден"% search)
Выход:
Следующий вывод появится для ввода 'Кекс' а также 'Шоколадный торт'.
Пример 5: поиск и подсчет элементов в списке в зависимости от длины
В следующем сценарии показано, как найти и подсчитать количество элементов в списке в зависимости от длины элемента. Здесь список с именем человек повторяется с использованием для цикл и проверьте длину каждого элемента списка. Значение счетчика увеличивается, если длина элемента больше или равна 7.
#!/ usr / bin / env python3# Определить список лиц
person = ['Sophia', 'Isabella', 'Olivia', 'Alexzendra', 'Bella']
# Инициализировать счетчик
counter = 0
# Итерировать список с помощью цикла
на имя в лицах:
# Проверить длину элемента
если (len (имя)> = 7):
# Увеличить счетчик на единицу
counter = counter + 1
# Проверить значение счетчика
если (счетчик> 0):
print ("% d человек (а) длина имени больше 7." %прилавок)
еще:
print ("Длина имени всех лиц меньше 7.")
Выход:
Следующий вывод появится после запуска скрипта.
Заключение:
В этом руководстве показаны различные способы поиска одного и нескольких элементов в списке с помощью в оператор, индекс метод и пользовательская функция. Читатель сможет правильно выполнять поиск в списке Python после прочтения этого руководства.
Посмотреть авторское видео: здесь