Како филтрирати листу стрингова у Питхону

How Filter List Strings Python



Питхон користи тип података листе за складиштење више података у секвенцијални индекс. Ради као нумерички низ других програмских језика. метода филтер () је веома корисна метода Питхона. Једна или више вредности података могу се филтрирати из било ког низа или листе или речника у Питхону помоћу методе филтер (). Он филтрира податке на основу било ког посебног стања. Похрањује податке када услов враћа вредност труе и одбацује податке када враћа вредност фалсе. Како се низови података са листе могу филтрирати у Питхону приказано је у овом чланку помоћу различитих примера. Морате да користите Питхон 3+ да бисте тестирали примере овог чланка.

Филтрирајте листу стрингова помоћу друге листе

Овај пример показује како се подаци у листи стрингова могу филтрирати без употребе било које методе. Листа низа се овде филтрира помоћу друге листе. Овде су две променљиве листе декларисане са именом лист1 и лист2 . Вредности лист2 филтрира се коришћењем вредности лист1 . Скрипта ће одговарати првој речи сваке вредности од лист2 са вредностима лист1 и одштампајте оне вредности у којима не постоје лист1 .







# Декларишите две променљиве листе
лист1= ['Перл', 'ПХП', „Јава“, „АСП“]
лист2= [„ЈаваСцрипт је скриптни језик на страни клијента“,
'ПХП је скриптни језик на страни сервера',
'Јава је програмски језик',
„Басх је скриптни језик“]

# Филтрирајте другу листу на основу прве листе
филтер_дата= [ИксзаИксулист2ако
све(ине уИксзаиулист1)]

# Одштампајте податке са листе пре и после филтера
принт(„Садржај прве листе:“,лист1)
принт(„Садржај друге листе:“,лист2)
принт('Садржај друге листе након филтера:',филтер_дата)

Излаз:



Покрените скрипту. Овде, лист1 не садржи реч „ Басх ’. Излаз ће садржати само једну вредност из лист2 то је ' Басх је скриптни језик “ .







Филтрирајте листу стрингова помоћу друге листе и прилагођене функције

Овај пример показује како се листа стрингова може филтрирати помоћу друге листе и прилагођене функције филтера. Скрипта садржи две променљиве листе са именом лист1 и лист2. Прилагођена функција филтера ће открити заједничке вредности обе променљиве листе.

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

# Прогласите функцију филтрирања података са прве листе
дефФилтер(лист1,лист2):
повратак [нзанулист1ако
било који(мунзамулист2)]

# Одштампајте податке са листе пре и после филтера
принт('Садржај листе1:',лист1)
принт('Садржај листе2:',лист2)
принт(„Подаци након филтера“,Филтер(лист1,лист2))

Излаз:



Покрените скрипту. 90 и 12 вредности постоје у обе променљиве листе. Следећи излаз ће бити генерисан након покретања скрипте.

Филтрирајте листу стрингова помоћу регуларног израза

Листа се филтрира помоћу све() и било који() методе у претходна два примера. У овом примеру се користи регуларни израз за филтрирање података са листе. Регуларни израз је образац помоћу којег се могу претраживати или слагати било који подаци. 'Ре' модуле се користи у питхону за примену регуларног израза у скрипти. Овде се објављује листа са шифрама предмета. Регуларни израз се користи за филтрирање оних шифри предмета који почињу са речју „ ЦСЕ '. ' ^ „Симбол се користи у обрасцима регуларних израза за претраживање на почетку текста.

# Увези ре модул за коришћење регуларног израза
увоз ре

# Прогласите да листа садржи шифру предмета
сублист= ['ЦСЕ-407', 'ПХИ-101', „ЦСЕ-101“, 'ЕНГ-102', 'МАТ-202']

# Прогласите функцију филтера
дефФилтер(даталист):
# Претражујте податке на основу регуларног израза на листи
повратак [хрсзахрсудаталист
ако ре.Претрага(р'^ ЦСЕ',хрс)]

# Одштампајте податке филтера
принт(Филтер(сублист))

Излаз:

Покрените скрипту. сублист променљива садржи две вредности које почињу са „ ЦСЕ ’. Следећи излаз ће се појавити након покретања скрипте.

Филтрирајте листу стрингова користећи израз ламда

Овај пример показује употребу ламда израз за филтрирање података са листе стрингова. Овде је променљива листа именована сеарцх_ворд се користи за филтрирање садржаја из текстуалне променљиве под именом текст . Садржај текста се претвара у листу са именом, тект_ворд на основу простора коришћењем разделити() метода. ламда израз ће изоставити те вредности из тект_ворд који постоје у сеарцх_ворд и сачувати филтриране вредности у променљивој додавањем размака.

# Прогласите листу која садржи реч за претрагу
сеарцх_ворд= ['Учи', „Код“, „Програмирање“, 'Блог']

# Дефинишите текст у коме ће реч са листе тражити
текст= 'Научите Питхон програмирање са Линукс блога са саветима'

# Поделите текст на основу размака и сачувајте речи на листи
тект_ворд=текст.разделити()

# Коришћењем ламбда израза филтрирајте податке
филтер_тект= ''.придружити((филтер(ламбдавал: валнеи
н реч_претраживања,тект_ворд)))

# Одштампајте текст пре филтрирања и након филтрирања
принт(' нТекст пре филтрирања: н',текст)
принт('Текст након филтрирања: н',филтер_тект)

Излаз:

Покрените скрипту. Следећи излаз ће се појавити након покретања скрипте.

Филтрирајте листу стрингова помоћу методе филтер ()

филтер () метода прихвата два параметра. Први параметар узима назив функције или Ниједан а други параметар узима име променљиве листе као вредности. филтер () метход чува те податке са листе ако врати труе, у супротном одбацује податке. Овде, Ниједан је дата као прва вредност параметра. Све вредности без лажно ће бити преузети са листе као филтрирани подаци.

# Прогласите листу мешаних података
листДата= ['Здраво', 200, 1, 'Свет', Нетачно, Истина, '0']

# Позив филтер филтер () са Ноне и листом
филтрирани подаци= филтер(Ниједан,листДата)

# Одштампајте листу након филтрирања података
принт(„Листа након филтрирања:“)
захрсуфилтрирани подаци:
принт(хрс)

Излаз:

Покрените скрипту. Листа садржи само једну лажну вредност која ће бити изостављена у филтрираним подацима. Следећи излаз ће се појавити након покретања скрипте.

Закључак:

Филтрирање је корисно када требате да претражите и преузмете одређене вредности са листе. Надам се да ће горе наведени примери помоћи читаоцима да разумеју начине филтрирања података са листе стрингова.