Поиск по сайту:

Python найти строку в списке


Мы можем использовать оператор Python in, чтобы проверить, присутствует ли строка в списке или нет. Существует также оператор not in для проверки отсутствия строки в списке.

l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']

# string in the list
if 'A' in l1:
    print('A is present in the list')

# string not 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

Рекомендуемая литература: f-строки Python Давайте рассмотрим другой пример, в котором мы попросим пользователя ввести строку для проверки списка.

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.