Om motmodul
Tellermodulen, som navnet antyder, kan brukes til å telle elementer av en iterable eller et hashabelt objekt i Python. Mot lagrer hvert element i en iterable (som et Python -listeobjekt) som en Python -ordboksnøkkel. Siden Python -ordbøker bare tillater unike nøkler, er det ingen repetisjon. De tilsvarende verdiene for disse ordbøkene nøkler er tellingen, eller hvor mange ganger et element vises i en iterable.
Grunnleggende bruk og syntaks
For å forstå den grunnleggende bruken og syntaks for tellerklasse, ta en titt på kodeprøven nedenfor:
Fra samlinger av samlinger importererDen første uttalelsen importerer motmodulen slik at motklassen kan brukes i koden. Deretter er et nytt Python -listeobjekt definert med noen data. Et nytt forekomst av motobjekt opprettes deretter ved å bestå “List1” som et argument. Den endelige uttalelsen skriver ut utdataene fra "teller" -objektet.
Etter å ha kjørt ovennevnte kodeprøve, bør du få følgende utdata:
Counter ('D': 4, 'B': 3, 'A': 2, 'E': 2, 'C': 1)Merk at utgangen returnerer et motobjekt av mottypen og ikke en Python -ordbok. Selv om det oppfører seg som en Python -ordbok med en mindre forskjell som er forklart nedenfor.
Et motobjekt oppfører seg som et Python Dictionary -objekt
En ordbok i Python er et objekt som lagrer varer i “Key: Value” -par. Nedenfor er et eksempel på Python Dictionary:
dict1 = "a": 1, "b": 2Delen før ":" (kolon) symbolet kalles "nøkkel" mens delen etter kolonsymbolet kalles "verdi". Du kan få tilgang til verdien av en hvilken som helst nøkkel i en Python -ordbok ved å bruke følgende syntaks:
dict1 = "a": 1, "b": 2Du må bare oppgi navnet på nøkkelen i “[]” (firkantet) seler. Hvis nøkkelen ikke eksisterer i ordboken, kastes en "nøkkelring".
Utgangen fra tellereksemplet ovenfor viser at når du oppretter en ny forekomst av motklassen, returneres et nytt mottypeobjekt. Dette mottypeobjektet er ikke annet enn en Python -ordbok, bortsett fra at den ikke kaster en "nøkkelring" når en nøkkelverdi mangler. I stedet tildeler den det en verdi av “0” (null). Du kan også få tilgang til verdiene til elementer i et motobjekt ved å oppgi nøkkelnavn i firkantede seler, akkurat som et ordboksobjekt. Ta en titt på kodeprøven nedenfor:
Fra samlinger av samlinger importererEtter å ha kjørt ovennevnte kodeprøve, bør du få følgende utdata:
0Som du kan se i utgangen at når du får tilgang til en nøkkel som ikke eksisterer i et motobjekt, blir “0” (null) returnert. Mens det er på den annen side, kaster et Python -ordbokobjekt en "nøkkelring" når en nøkkel mangler.
Opprette et motobjekt manuelt
Det kan være en sak der du kanskje vil definere et motobjekt manuelt i stedet for å analysere en iterable som en Python -liste. For å lage et motobjekt, kan du bruke følgende syntaks:
Fra samlinger av samlinger importererDu kan bruke Syntax for argumentstil som vises i den første uttalelsen, eller bruke Python Dictionary Style Syntax vist i den andre uttalelsen for å lage nye forekomster av et motobjekt. Begge metodene har samme effekt og gir samme utgang.
Etter å ha kjørt ovennevnte kodeprøve, bør du få følgende utdata:
Teller ('a': 4, 'b': 3)Få vanligste gjenstander fra et motobjekt
Du kan bruke metoden “Most_common” for å få elementer og tellingene deres sortert i synkende rekkefølge fra et motobjekt av mottypen. Ta en titt på kodeprøven nedenfor:
Fra samlinger av samlinger importererUtgangen returnerer en liste over tuples og ikke en teller- eller python -ordbokobjekt.
Du kan også få bare noen få viktigste elementer ved å levere et nummer til "Most_common" -metoden som et argument.
Fra samlinger av samlinger importererEtter å ha kjørt ovennevnte kodeprøve, bør du få følgende utdata:
[('D', 4), ('B', 3)]Andre nyttige motmetoder
Du kan få tilgang til alle nøkler og verdier av et motobjekt ved å bruke henholdsvis "nøkler" og "verdier" -metoder ".
Fra samlinger av samlinger importererEtter å ha kjørt ovennevnte kodeprøve, bør du få følgende utdata:
dict_keys (['a', 'b', 'c', 'd', 'e'])Disse metodene gir iterable gjenstander slik at du kan sløyfe gjennom dem.
Du kan få både nøkler og verdier ved å bruke "elementene" -metoden.
Fra samlinger av samlinger importererEtter å ha kjørt ovennevnte kodeprøve, bør du få følgende utdata:
dict_items ([('a', 2), ('b', 3), ('c', 1), ('d', 4), ('e', 2)])Du kan også sløyfe gjennom resultatet oppnådd ved å bruke "elementet" -metoden.
Du kan konvertere et motobjekt til en Python -ordbok ved hjelp av "DICT" -funksjonen.
Fra samlinger av samlinger importererEtter å ha kjørt ovennevnte kodeprøve, bør du få følgende utdata:
'A': 2, 'B': 3, 'C': 1, 'D': 4, 'E': 2Sløyfe gjennom nøkler og verdier av et motobjekt
Du kan enkelt sløyfe gjennom nøkkelverdipar av et motobjekt ved hjelp av "elementer" -metoden forklart ovenfor. Ta en titt på kodeprøven nedenfor:
Fra samlinger av samlinger importererI koden kan du få tilgang.
Etter å ha kjørt ovennevnte kodeprøve, bør du få følgende utdata:
A 2Konklusjon
Pythons innebygde "counter" -modul gir en rask og effektiv måte å få antall gjenstander lagret i et iterable type objekt. Du kan bruke metoden “Most_common” for å få topp par med høyeste tellinger ved å levere ønsket nummer som et argument.