Мы можем использовать оператор Python in
, чтобы проверить, присутствует ли строка в списке или нет. Существует также оператор not in
, чтобы проверить, не присутствует ли строка в списке.
l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
# строка в списке
if 'A' in l1:
print('A is present in the list')
# строка не в списке
if 'X' not in l1:
print('X is not present in the list')
Вывод:
A is present in the list
X is not present in the list
Рекомендуемая литература: Python f-strings Давайте рассмотрим еще один пример, где мы попросим пользователя ввести строку для проверки в списке.
l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')
if s in l1:
print(f'{s} is present in the list')
else:
print(f'{s} is not present in the list')
Вывод:
Please enter a character A-Z:
A
A is present in the list
Поиск строки в списке Python с помощью функции count()
Мы также можем использовать функцию count(), чтобы получить количество вхождений строки в список. Если ее вывод равен 0, то это означает, что строка отсутствует в списке.
l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'
count = l1.count(s)
if count > 0:
print(f'{s} is present in the list for {count} times.')
Поиск всех индексов строки в списке
Нет встроенной функции для получения списка всех индексов строки в списке. Вот простая программа для получения списка всех индексов, где строка присутствует в списке.
l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'
matched_indexes = []
i = 0
length = len(l1)
while i < length:
if s == l1[i]:
matched_indexes.append(i)
i += 1
print(f'{s} is present in {l1} at indexes {matched_indexes}')
Вывод: A присутствует в ['A', 'B', 'C', 'D', 'A', 'A', 'C'] по индексам [0, 4, 5]
Вы можете ознакомиться с полным скриптом на Python и большим количеством примеров на Python в нашем Репозитории GitHub.
Source:
https://www.digitalocean.com/community/tutorials/python-find-string-in-list