Как да филтрирате списък от низове в Python

How Filter List Strings Python



Python използва тип данни от списък, за да съхранява множество данни в последователен индекс. Той работи като числов масив на други езици за програмиране. методът filter () е много полезен метод на Python. Една или повече стойности на данни могат да бъдат филтрирани от всеки низ или списък или речник в Python с помощта на метода filter (). Той филтрира данни въз основа на всяко конкретно условие. Той съхранява данни, когато условието връща true, и изхвърля данни, когато връща false. Как низовите данни в списък могат да се филтрират в Python е показано в тази статия, като се използват различни примери. Трябва да използвате Python 3+, за да тествате примерите от тази статия.

Филтрирайте списък с низ, като използвате друг списък

Този пример показва как данните в списък от низ могат да бъдат филтрирани, без да се използва никакъв метод. Списъкът на низа се филтрира тук, като се използва друг списък. Тук две променливи в списъка са декларирани с името списък1 и списък2 . Стойностите на списък2 се филтрира, като се използват стойностите на списък1 . Скриптът ще съответства на първата дума от всяка стойност на списък2 със стойностите на списък1 и отпечатайте тези стойности, които не съществуват в списък1 .







# Декларирайте две променливи на списъка
списък1= ['Perl', 'PHP', 'Java', „ASP“]
списък2= [„JavaScript е скриптов език от страна на клиента“,
'PHP е скриптов език от страна на сървъра',
„Java е език за програмиране“,
„Bash е скриптов език“]

# Филтрирайте втория списък въз основа на първия списък
filter_data= [хзахвсписък2ако
всичко(ине вхзаивсписък1)]

# Отпечатайте данни от списъка преди филтъра и след филтъра
печат(„Съдържанието на първия списък:“,списък1)
печат(„Съдържанието на втория списък:“,списък2)
печат(„Съдържанието на втория списък след филтър:“,filter_data)

Изход:



Стартирайте скрипта. Тук, списък1 не съдържа думата „ Баш “. Изходът ще съдържа само една стойност от списък2 това е ' Bash е скриптов език “ .







Филтрирайте списък с низ, като използвате друг списък и персонализирана функция

Този пример показва как може да се филтрира списък от низ, като се използва друг списък и функцията за персонализиран филтър. Скриптът съдържа две променливи на списък, наречени list1 и list2. Персонализираната функция за филтър ще открие общите стойности на двете променливи на списъка.

# Декларирайте две променливи на списъка
списък1= ['90', '67', '3. 4', '55', '12', '87', '32']
списък2= ['9', '90', '38', 'Четири пет', '12', 'двайсет']

# Декларирайте функция за филтриране на данни от първия списък
defФилтър(списък1,списък2):
връщане [нзанвсписък1ако
всякакви(мвнзамвсписък2)]

# Отпечатайте данните от списъка преди филтъра и след филтъра
печат(„Съдържанието на списък1:“,списък1)
печат(„Съдържанието на list2:“,списък2)
печат(„Данните след филтъра“,Филтър(списък1,списък2))

Изход:



Стартирайте скрипта. Стойности 90 и 12 съществуват и в двете променливи на списъка. Следният изход ще бъде генериран след стартиране на скрипта.

Филтрирайте списък с низ, използвайки регулярен израз

Списъкът се филтрира чрез използване всичко() и всеки () методи в предишните два примера. В този пример се използва регулярен израз за филтриране на данните от списък. Регулярният израз е модел, по който всякакви данни могат да бъдат търсени или съпоставяни. 'Re' module се използва в python за прилагане на регулярен израз в скрипта. Тук се декларира списък с кодове на теми. Редовен израз се използва за филтриране на тези кодове на теми, които започват с думата „ CSE '. ' ^ „Символът се използва в шаблони за регулярни изрази за търсене в началото на текста.

# Импортиране на повторен модул за използване на регулярен израз
внос повторно

# Обявете, че списъкът съдържа код на тема
подлист= [„CSE-407“, „PHY-101“, „CSE-101“, „ENG-102“, 'MAT-202']

# Декларирайте функцията за филтър
defФилтър(даталист):
# Търсене на данни въз основа на регулярен израз в списъка
връщане [часзачасвдаталист
ако повторно.Търсене(r'^ CSE',час)]

# Отпечатайте данните за филтъра
печат(Филтър(подлист))

Изход:

Стартирайте скрипта. подлист променливата съдържа две стойности, които започват с „ CSE “. Следният изход ще се появи след стартиране на скрипта.

Филтрирайте списък с низ, използвайки израз lamda

Този пример показва използването на ламда израз за филтриране на данни от списък от низове. Тук има списък с променлива с име дума за търсене се използва за филтриране на съдържание от текстова променлива с име текст . Съдържанието на текста се преобразува в списък с име, text_word въз основа на пространството чрез използване split () метод. ламда изразът ще пропусне тези стойности от text_word които съществуват в дума за търсене и съхранявайте филтрираните стойности в променлива чрез добавяне на интервал.

# Декларирайте списък, който съдържа думата за търсене
дума за търсене= ['Учи', „Код“, 'Програмиране', 'Блог']

# Определете текста, където думата от списъка ще търси
текст= „Научете Python програмиране от Linux Hint Blog“

# Разделете текста въз основа на интервал и съхранявайте думите в списък
text_word=текст.разделяне()

# Използвайки ламбда израз, филтрирайте данните
filter_text= ''.присъединяване((филтър(ламбдавал: валнеi
n търсеща дума,text_word)))

# Отпечатайте текст преди филтриране и след филтриране
печат('нТекст преди филтриране:н',текст)
печат('Текст след филтриране:н',filter_text)

Изход:

Стартирайте скрипта. Следният изход ще се появи след стартиране на скрипта.

Филтрирайте списък с низ чрез метода filter ()

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

# Декларирайте списък на смесени данни
listData= ['Здравейте', 200, 1, 'Светът', Фалшиво, Вярно, '0']

# Извикване на filter () метод с None и списък
filteredData= филтър(Нито един,listData)

# Отпечатайте списъка след филтриране на данните
печат(„Списъкът след филтриране:“)
зачасвфилтрирани данни:
печат(час)

Изход:

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

Заключение:

Филтрирането е полезно, когато трябва да търсите и извличате определени стойности от списък. Надявам се, че горните примери ще помогнат на читателите да разберат начините за филтриране на данни от списък от низове.