W tym samouczku Pythona pokażę cijak liczyć wystąpienia znaku na liście Pythona, różnymi metodami z wykorzystaniem demonstracyjnych przykładów.
Listy w Pythonie są bardzo wszechstronne. Mogą zawierać dowolne obiekty dowolną ilość razy. Mogą też zawierać te same obiekty dowolną ilość razy. I możemy policzyć, ile razy pojawiają się one na liście Pythona lub nawet postać obecna na liście Pythona.
Oto przykład tego, jak wygląda lista w Pythonie z tymi samymi elementami:
People_cities = ['AK', 'CO', 'NY', 'NJ', 'CA', 'TX', 'CA', 'NY', 'NY', 'TX']
W tym scenariuszu w sali konferencyjnej są ludzie z różnych miast (pisanych skrótami) w USA. Musimy znaleźć liczbę osób, które przybyły z „NY” (Nowy Jork).
Mamy wiele różnych sposobów, aby dowiedzieć się o wystąpieniu „NY” na liście.
Spis treści
Zliczanie wystąpień znaku na liście Pythona
Istnieje wiele różnych sposobówpoliczyć występowanie znaku na liście w Pythonie. Oni są:
- Pythoniczna metoda count().
- Używanie rozumienia listy
- Korzystanie z pętli for
- Wykorzystanie klasy Counter z modułu collections
- Korzystanie z funkcji filtra
- Korzystanie ze słownika
- Korzystanie z wyrażeń regularnych
Przyjrzymy się im jeden po drugim na ilustracyjnych przykładach.
Metoda count() do liczenia wystąpień znaku na liście Pythona
Wbudowany Pythonfunkcja count().może służyć do liczenia wystąpień elementu na liście.
Rozważmy na przykład listę popularnych amerykańskich sieci fast-food w języku Python.
fast_food_chains = ['McDonald\'s', 'Starbucks', 'Subway', 'Taco Bell', 'Subway', 'Burger King', 'Starbucks']# Policz liczbę wystąpień 'Starbucks' = fast_food_chains.count( 'Starbucks') print('Liczba obecności Starbucks wynosi:', liczba)
Wyjście jest:
Liczba obecności Starbucks wynosi: 2
W ten sposób możemy policzyć występowanie elementu na liście Pythona za pomocą metodyfunkcja count()..
Użyj rozumienia listy, aby zliczyć wystąpienia znaku na liście Pythona
Rozumienie listyto Pythoniczny sposób wykonywania operacji na listach. Możemy go również używać do liczenia wystąpień.
Weźmy przykład liczenia, ile razy znak „a” pojawia się na liście prezydentów USA w Pythonie:
prezydenci = ['George Washington', 'Thomas Jefferson', 'Abraham Lincoln', 'Franklin D. Roosevelt', 'Barack Obama']# Policz wystąpienie 'a'count = sum([president.count('a' ) dla prezydenta w prezydentach])print('Całkowita liczba \'a\' obecnych na liście to: ', liczba)
Wyjście jest:
Łączna liczba „a” występujących na liście to: 9
W ten sposób możemy skorzystaćrozumienie listyaby policzyć wystąpienia znaku na liście Pythona.
Zliczanie wystąpień elementu na liście Pythona za pomocą pętli for
Prostydla pętliw Pythonie można użyć do przechodzenia przez listę i liczenia wystąpień:
Na przykład mamy listę miast w USA: policzmy, ile razy „Los Angeles” występuje na liście Pythona.
Tutaj najpierw zdefiniujemy listę Pythona, która będzie zawierać nazwy miast. Następnie zainicjujemy zmienną count na 0. Ta zmienna służy do śledzenia liczby wystąpień „Los Angeles” na liście Pythona.
city = ['Los Angeles', 'Nowy Jork', 'Los Angeles', 'Chicago', 'Los Angeles', 'Houston', 'Phoenix']# Policz występowanie 'Los Angeles'count = 0dla miasta w miastach : if city == 'Los Angeles': count += 1print('Liczba wystąpień w Los Angeles wynosi:', count)
Wyjście jest:
Liczba wystąpień w Los Angeles to: 3
W ten sposób możemy skorzystaćdla pętliaby policzyć wystąpienia elementu na liście Pythona.
Wykorzystanie klasy Counter z modułu Collections do zliczenia wystąpień elementu na liście Pythona
Pythonamoduł kolekcjioferujeKlasa licznika, co ułatwia liczenie elementów na liście.
Weźmy na przykład listę Pythona, aby policzyć wystąpienia różnych drużyn koszykarskich na liście Mistrzów NBA na przestrzeni lat.
nba_champions = ['Lakers', 'Bulls', 'Celtics', 'Spurs', 'Warriors', 'Bulls', 'Lakers', 'Celtics']# Importuj klasę Counter z kolekcji import Counter# Utwórz licznik objectcounter = Counter (nba_champions)# Policz wystąpienie 'Lakers'print('Ile razy Lakers byli mistrzami nba: ',counter['Lakers'])
Wyjście jest:
Ile razy Lakers byli mistrzami NBA: 2
W ten sposób możemy wykorzystać tzwcounter class z modułu collectionsw Pythonie, aby policzyć wystąpienie elementu na liście.
Zliczanie występowania znaku na liście Pythona za pomocą funkcji filtrującej
Thefilter() w Pythonie, filtruje podaną sekwencję (listę) za pomocą funkcji (funkcji lambda), która sprawdza, czy każdy element w sekwencji jest prawdziwy, czy nie.
Na przykład otrzymaliśmy listę Pythona firm technologicznych, które odwiedziliśmy w tym miesiącu, i chcemy policzyć, ile razy „Apple” pojawia się na liście. Oto kod:
tech_companies = ['Apple', 'Microsoft', 'Google', 'Facebook', 'Amazon', 'Apple', 'Netflix']Apple = len(list(filter(lambda x: x == 'Apple', tech_companies )))print('Liczba wizyt firmy Apple to: ',Apple)
Wyjście jest:
Ile razy odwiedziliśmy firmę Apple to: 2
W ten sposób możemy wykorzystać tzwfunkcja filtraaby policzyć występowanie znaków na liście Pythona.
Użyj słownika, aby policzyć wystąpienia elementów na liście Pythona
Możemy również użyć ASłownik Pythonado liczenia wystąpień elementów na liście.
Załóżmy, że mamy listę amerykańskich producentów samochodów w Pythonie i chcemy policzyć liczbę każdego producenta obecnego na liście:
producenci = ['Ford', 'General Motors', 'Tesla', 'Rivian', 'Lordstown Motors']liczba = {}dla produkcji w producentach: jeśli produkcja w liczbie: liczba[produkcja] += 1 else: liczba[ produkcja] = 1print(liczba)
Wyjście jest:
{'Ford': 1, 'General Motors': 1, 'Tesla': 1, 'Rivian': 1, 'Lordstown Motors': 1}
W ten sposób możemy wykorzystać tzwsłownikaby policzyć każde wystąpienie elementu na liście Pythona.
Użyj wyrażeń regularnych, aby policzyć występowanie znaku na liście Pythona
Wyrażenie regularnes, znany również jakowyrażenie regularne w Pythonie, to sekwencje znaków, które tworzą wzorzec wyszukiwania. Regex może być używany w Pythonie poprzezponownie moduł. Mogą być szczególnie przydatne w sytuacjach, takich jak liczenie wystąpień znaku lub wzorca na liście łańcuchów.
Rozważmy listę słynnych amerykańskich sportowców w Pythonie i chcemy dowiedzieć się, ile razy pojawia się słowo „Jordan”:
import reathletes = ['Michael Jordan', 'LeBron James', 'Tom Brady', 'Michael Jordan', 'Serena Williams', 'Tiger Woods', 'Jordan Spieth']# Dołącz do listy w jednym stringathletes_string = ' ' .join(athletes)# Policz wystąpienie 'Jordan'count = len(re.findall('Jordan', sports_string))print('Liczba wystąpień Jordanii, gdy lista jest prezentowana to:', count)
Wyjście jest:
Liczba wystąpień Jordana w tej liście to: 3
W ten sposób używamyWyrażenie regularneaby policzyć występowanie znaków na liście Pythona.
Wniosek
Python oferuje różnorodne technikizliczanie wystąpień znaku lub elementu na liście.Metody te obejmują proste techniki, takie jak użycie adla pętlido stosowania wbudowanych funkcji Pythona, takich jakliczyć() i filtrować()lub przy użyciu struktur danych, takich jaksłowniki, rozumienie listlub za pomocą awyrażenie regularne i licznik z modułu collections.
Możesz także przeczytać:
- Jak przekonwertować ciąg z przecinkiem na float w Pythonie?
- Metoda Python List count() [z przykładami]
- Program w języku Python do konwersji ciągu znaków na listę
Bijay Kumar
Jestem Bijay Kumar, aMVP Microsoftuw SharePoint. Oprócz SharePoint przez ostatnie 5 lat zacząłem pracować nad Pythonem, uczeniem maszynowym i sztuczną inteligencją. W tym czasie zdobyłem doświadczenie w różnych bibliotekach Pythona, takich jak Tkinter, Pandas, NumPy, Turtle, Django, Matplotlib, Tensorflow, Scipy, Scikit-Learn itp. dla różnych klientów w Stanach Zjednoczonych, Kanadzie, Wielkiej Brytanii, Australii, Nowa Zelandia itp.Sprawdź mój profil.