O module kontratakowym
Moduł kontratakowy, jak sama nazwa wskazuje, może być użyty do zliczenia elementów iterabalnego lub haszalnego obiektu w Pythonie. Counter przechowuje każdy element iterable (jak obiekt listy Python) jako klucz słownika Pythona. Ponieważ słowniki Pythona pozwalają tylko na unikalne klucze, nie ma powtórzenia. Odpowiednie wartości dla tych kluczy słowników to liczba lub ilość razy, w którym element pojawia się w iteracyjnym.
Podstawowe użycie i składnia
Aby zrozumieć podstawowe użycie i składnię klasy licznej, spójrz na poniższą próbkę kodu:
Z kolekcji importowychPierwsza instrukcja importuje moduł licznika, aby klasa licznika mogła być używana w kodzie. Następnie nowy obiekt listy Python jest zdefiniowany za pomocą niektórych danych. Nowa instancja kontr -obiekt jest następnie tworzona, przekazując „list1” jako argument. Ostateczna instrukcja drukuje dane wyjściowe obiektu „liczba”.
Po uruchomieniu powyższej próbki kodu należy uzyskać następujące dane wyjściowe:
Licznik ('d': 4, „b”: 3, „a”: 2, „e”: 2, „c”: 1)Należy zauważyć, że wyjście zwraca obiekt typu licznika, a nie słownik Python. Chociaż zachowuje się jak słownik Pythona z jedną niewielką różnicą, co wyjaśniono poniżej.
Kontr -obiekt zachowuje się jak obiekt słownika Pythona
Słownik w Python to obiekt, który przechowuje elementy w parach „Key: Value”. Poniżej znajduje się przykład słownika Pythona:
dict1 = „A”: 1, „B”: 2Część przed symbolem „:” (okrężnicy) nazywa się „klucz”, podczas gdy część po symbolu okrężnicy nazywa się „wartością”. Możesz wartość dostępu dowolnego klucza w słowniku Python za pomocą następującej składni:
dict1 = „A”: 1, „B”: 2Wystarczy podać nazwę klucza w „[]” (kwadratowych). Jeśli klucz nie istnieje w słowniku, rzucany jest „Keyerror”.
Dane wyjściowe powyższego przykładu pokazuje, że po utworzeniu nowej instancji klasy licznika zwracany jest nowy obiekt typu licznika. Ten obiekt typu licznika jest niczym innym jak słownikiem Python, z wyjątkiem tego, że nie rzuca „Keyerror”, gdy brakuje wartości kluczowej. Zamiast tego przypisuje mu wartość „0” (zero). Możesz również uzyskać dostęp do wartości elementów w obiekcie kontratakowym, dostarczając nazwy kluczowych w kwadratowych aparatach ortodontycznych, podobnie jak obiekt słownika. Spójrz na poniższą próbkę kodu:
Z kolekcji importowychPo uruchomieniu powyższej próbki kodu należy uzyskać następujące dane wyjściowe:
0Jak widać, że po dostępie do klucza, który nie istnieje w obiekcie kontratakowym, „0” (zero) jest zwracany. Z drugiej strony obiekt słownika Pythona rzuca „Keyerror”, gdy brakuje klucza.
Ręczne tworzenie kontrataków
Może istnieć przypadek, w którym możesz ręcznie zdefiniować kontratak zamiast analizować iterabinę jak lista Python. Aby utworzyć obiekt kontratakowy, możesz użyć następującej składni:
Z kolekcji importowychMożesz użyć składni w stylu argumentu pokazanym w pierwszej instrukcji lub użyć składni stylu słownika Pythona pokazanego w drugiej instrukcji, aby utworzyć nowe instancje obiektu kontratakowego. Obie metody mają ten sam efekt i dają to samo wyjście.
Po uruchomieniu powyższej próbki kodu należy uzyskać następujące dane wyjściowe:
Licznik („A”: 4, „B”: 3)Uzyskanie najczęstszych elementów z kontrataku
Możesz użyć metody „MOST_COMMON”, aby uzyskać elementy, a ich liczba posortowana w kolejności malejącej z obiektu typu licznika. Spójrz na poniższą próbkę kodu:
Z kolekcji importowychDane wyjściowe zwraca listę krotek, a nie kontratak lub obiekt słownika Pythona.
Możesz także uzyskać tylko kilka najwyższych elementów, dostarczając liczbę do metody „Most_Common” jako argument.
Z kolekcji importowychPo uruchomieniu powyższej próbki kodu należy uzyskać następujące dane wyjściowe:
[(„D”, 4), („B”, 3)]Inne przydatne metody kontrataków
Możesz uzyskać dostęp do wszystkich klawiszy i wartości licznika obiektów za pomocą odpowiednio metod „klawisze” i „wartości”.
Z kolekcji importowychPo uruchomieniu powyższej próbki kodu należy uzyskać następujące dane wyjściowe:
dict_keys ([„a”, „b”, „c”, „d”, „e”])Te metody wytwarzają iteracyjne obiekty, dzięki czemu możesz je zapętlić.
Możesz uzyskać zarówno klawisze, jak i wartości za pomocą metody „Items”.
Z kolekcji importowychPo uruchomieniu powyższej próbki kodu należy uzyskać następujące dane wyjściowe:
dict_items ([('a', 2), ('b', 3), ('c', 1), ('d', 4), ('e', 2)]))Możesz także zapętlić się przez wynik uzyskany za pomocą metody „pozycji”.
Możesz przekonwertować kontr -obiekt na słownik Python za pomocą funkcji „DICT”.
Z kolekcji importowychPo uruchomieniu powyższej próbki kodu należy uzyskać następujące dane wyjściowe:
„A”: 2, „B”: 3, „C”: 1, „D”: 4, „e”: 2Zapętlanie klawiszy i wartości obiektu kontraktowego
Możesz łatwo zapętlić pary wartości kluczowej obiektu za pomocą metody „Items” wyjaśnionej powyżej. Spójrz na poniższą próbkę kodu:
Z kolekcji importowychW kodzie zmienną parą kluczy można uzyskać odpowiednio za pomocą zmiennych „Key” i „Wartość” w pętli „dla”.
Po uruchomieniu powyższej próbki kodu należy uzyskać następujące dane wyjściowe:
2Wniosek
Wbudowany moduł „licznika” Pythona zapewnia szybki i wydajny sposób na uzyskanie liczby elementów przechowywanych w obiekcie typu iterowal. Możesz użyć metody „MOST_COMMON”, aby uzyskać najwyższe pary z najwyższymi liczbami, dostarczając żądaną liczbę jako argument.