Python

Как отфильтровать список строк в Python

Как отфильтровать список строк в Python
Python использует тип данных списка для хранения нескольких данных в последовательном индексе. Он работает как числовой массив других языков программирования. filter () - очень полезный метод Python. Одно или несколько значений данных можно отфильтровать из любой строки, списка или словаря в Python с помощью метода filter ().  Он фильтрует данные на основе любого конкретного условия. Он хранит данные, когда условие возвращает true, и отбрасывает данные, когда возвращает false. Как строковые данные в списке могут быть отфильтрованы в Python, показано в этой статье на различных примерах. Вы должны использовать Python 3+, чтобы протестировать примеры из этой статьи.

Отфильтровать список строк, используя другой список

В этом примере показано, как данные в списке строк могут быть отфильтрованы без использования какого-либо метода. Список строки фильтруется здесь с помощью другого списка. Здесь объявлены две переменные списка с именем list1 а также list2. Ценности list2 фильтруется с использованием значений list1. Скрипт будет соответствовать первому слову каждого значения list2 со значениями list1 и распечатайте те значения, которых нет в list1.

# Объявить две переменные списка
list1 = ['Perl', 'PHP', 'Java', 'ASP']
list2 = ['JavaScript - это язык сценариев на стороне клиента',
"PHP - это язык сценариев на стороне сервера",
'Java - это язык программирования',
'Bash - это язык сценариев']
 
# Отфильтровать второй список на основе первого списка
filter_data = [x для x в списке 2, если
все (y не в x вместо y в списке 1)]
 
# Распечатать данные списка перед фильтром и после фильтра
print ("Содержание первого списка:", list1)
print ("Содержание второго списка:", list2)
print ("Содержимое второго списка после фильтра:", filter_data)

Выход:

Запускаем скрипт. Здесь, list1 не содержит слова 'Баш'. Вывод будет содержать только одно значение из list2 это 'Bash - это язык сценариев '.

Отфильтровать список строк с помощью другого списка и настраиваемой функции

В этом примере показано, как можно отфильтровать список строк с помощью другого списка и функции настраиваемого фильтра. Скрипт содержит две переменные списка с именами list1 и list2. Функция настраиваемого фильтра найдет общие значения обеих переменных списка.

# Объявить две переменные списка
list1 = ['90', '67', '34', '55', '12', '87', '32']
list2 = ['9', '90', '38', '45', '12', '20']
 
# Объявить функцию для фильтрации данных из первого списка
def Фильтр (список1, список2):
return [n для n в списке 1, если
любой (m в n вместо m в списке2)]
 
# Распечатать данные списка перед фильтром и после него
print ("Содержание списка1:", список1)
print ("Содержание списка2:", список2)
print ("Данные после фильтра", Filter (list1, list2))

Выход:

Запускаем скрипт. В обеих переменных списка есть 90 и 12 значений. Следующий вывод будет сгенерирован после запуска скрипта.

Отфильтровать список строк с помощью регулярного выражения

Список фильтруется с использованием все() а также любой() методы в двух предыдущих примерах. В этом примере используется регулярное выражение для фильтрации данных из списка. Регулярное выражение - это шаблон, по которому можно искать или сопоставлять любые данные. 're' модуль используется в Python для применения регулярного выражения в скрипте. Здесь объявлен список с предметными кодами. Регулярное выражение используется для фильтрации тех тематических кодов, которые начинаются со слова 'CSE'. '^'символ используется в шаблонах регулярных выражений для поиска в начале текста.

# Импортировать модуль re для использования регулярного выражения
импортный ре
 
# Объявить, что список содержит код темы
подсписок = ['CSE-407', 'PHY-101', 'CSE-101', 'ENG-102', 'MAT-202']
# Объявить функцию фильтра
def Фильтр (список данных):
# Поиск данных по регулярному выражению в списке
return [val for val в списке данных
если ре.поиск (r '^ CSE', val)]
# Распечатать данные фильтра
печать (Фильтр (подсписок))

Выход:

Запускаем скрипт. подсписок переменная содержит два значения, которые начинаются с 'CSE'. Следующий вывод появится после запуска скрипта.

Отфильтровать список строк с помощью лямда-выражения

В этом примере показано использование Ламда выражение для фильтрации данных из списка строк. Здесь переменная списка с именем search_word используется для фильтрации содержимого текстовой переменной с именем текст. Содержимое текста преобразуется в список с именем, text_word на основе пространства с использованием расколоть() метод. Ламда выражение будет опускать эти значения из text_word которые существуют в search_word и сохраните отфильтрованные значения в переменной, добавив пробел.

# Объявить список, содержащий поисковое слово
search_word = ["Обучай", "Код", "Программирование", "Блог"]
# Определите текст, в котором слово из списка будет искать
text = "Изучите программирование на Python из блога Linux Hint"
# Разделить текст по пробелу и сохранить слова в списке
text_word = текст.расколоть()
# Использование лямбда-выражения для фильтрации данных
filter_text = ".join ((filter (лямбда val: val not i
n search_word, text_word)))
# Печатать текст перед фильтрацией и после фильтрации
print ("\ nТекст перед фильтрацией: \ n", текст)
print ("Текст после фильтрации: \ n", filter_text)

Выход:

Запускаем скрипт. Следующий вывод появится после запуска скрипта.

Отфильтруйте список строк с помощью метода filter ()

фильтр() метод принимает два параметра. Первый параметр принимает имя функции или Никто а второй параметр принимает имя переменной списка в качестве значений. фильтр() метод сохраняет эти данные из списка, если он возвращает true, в противном случае он отбрасывает данные. Здесь, Никто задается как значение первого параметра. Все значения без ложный будут извлечены из списка как отфильтрованные данные.

# Объявить список смешанных данных
listData = ['Hello', 200, 1, 'World', False, True, '0']
 
# Вызвать метод filter () с None и списком
filterData = filter (Нет, listData)
 
# Распечатать список после фильтрации данных
print ('Список после фильтрации:')
для val в filterData:
печать (val)

Выход:

Запускаем скрипт. Список содержит только одно ложное значение, которое будет опущено в отфильтрованных данных. Следующий вывод появится после запуска скрипта.

Заключение:

Фильтрация полезна, когда вам нужно искать и извлекать определенные значения из списка. Надеюсь, приведенные выше примеры помогут читателям разобраться в способах фильтрации данных из списка строк.

Контроль и управление перемещением мыши между несколькими мониторами в Windows 10
Диспетчер мыши с двумя дисплеями позволяет контролировать и настраивать движение мыши между несколькими мониторами, замедляя ее движения возле границы...
WinMouse позволяет настраивать и улучшать движение указателя мыши на ПК с Windows
Если вы хотите улучшить функции указателя мыши по умолчанию, используйте бесплатное ПО WinMouse. Он добавляет дополнительные функции, которые помогут ...
Левая кнопка мыши не работает в Windows 10
Если вы используете выделенную мышь со своим ноутбуком или настольным компьютером, но левая кнопка мыши не работает в Windows 10/8/7 по какой-то причи...