Python Laskuri kokoelmissa esimerkin kanssa

Mikรค on Python Laskuri?

Python Laskuri on sรคiliรถ, joka sisรคltรครค jokaisen sรคiliรถssรค olevien elementtien mรครคrรคn. Laskuri on alaluokka, joka on saatavilla sanakirjaluokan sisรคllรค.

Laskuri on alaluokka, joka on saatavilla sanakirjaluokan sisรคllรค. Kรคyttรคmรคllรค Python Laskurityรถkalulla voit laskea objektin avainarvoparit, jota kutsutaan myรถs hash-taulukkoobjektiksi.

Miksi kรคyttรครค Python Laskuri?

Tรคssรค on tรคrkeimmรคt syyt kรคyttรครค Python 3 Laskuri:

  • Laskuri sรคilyttรครค tiedot jรคrjestรคmรคttรถmรคssรค kokoelmassa, aivan kuten hashtable-objektit. Tรคssรค olevat elementit edustavat avaimia ja niiden mรครคrรครค arvoina.
  • Sen avulla voit laskea kohteet iteroitavassa luettelossa.
  • Aritmeettiset laskutoimitukset, kuten yhteenlasku ja osalaskutracYhdistรคminen, leikkaaminen ja yhdistรคminen voidaan helposti suorittaa laskurilla.
  • Laskuri voi myรถs laskea elementtejรค toiselta laskurilta

Johdatus Python Laskuri

Python Laskuri ottaa syรถtteeksi luettelon, monikon, sanakirjan, merkkijonon, jotka ovat kaikki iteroitavia objekteja, ja se antaa sinulle tulosteen, jossa on kunkin elementin mรครคrรค.

Syntaksi:

Counter(list)

Oletetaan, ettรค sinulla on seuraava luettelo:

list1 = ['x','y','z','x','x','x','y', 'z']

Listassa on elementit x , y ja z. Kun kรคytรคt tรคssรค luettelossa laskuria, se laskee kuinka monta kertaa x , y ja z on lรคsnรค. Jos laskuria kรคytetรครคn listassa1, tulosteen pitรคisi olla jotain tรคllaista:

Counter({'x': 4, 'y': 2, 'z': 2})

Joten meillรค on x:n mรครคrรค 4, y:n 2 ja z:n luku 2.

Kรคyttรครคksemme laskuria meidรคn on ensin tuotava se alla olevan esimerkin mukaisesti:

from collections import Counter

Tรคssรค on yksinkertainen esimerkki, joka nรคyttรครค Counter-moduulin toiminnan.

from collections import Counter
list1 = ['x','y','z','x','x','x','y', 'z']
print(Counter(list1))

lรคhtรถ:

Counter({'x': 4, 'y': 2, 'z': 2})

Stringillรค varustettu laskuri

In Python, kaikki on esine ja merkkijono on myรถs objekti. Python jono voidaan luoda yksinkertaisesti lisรครคmรคllรค merkit kaksoislainausmerkkeihin. Python ei tue merkkityyppiรค. Nรคitรค kรคsitellรครคn merkkijonoina, joiden pituus on yksi, ja niitรค pidetรครคn myรถs osamerkkijonoina.

Alla olevassa esimerkissรค merkkijono vรคlitetรครคn laskuriin. Se palauttaa sanakirjamuodon, jossa on avain/arvo-pari, jossa avain on elementti ja arvo on mรครคrรค. Se pitรครค myรถs tilaa elementtinรค ja antaa merkkijonon vรคlilyรถntien mรครคrรคn.

Esimerkiksi:

from collections import Counter
my_str = "Welcome to Guru99 Tutorials!"
print(Counter(my_str))

lรคhtรถ:

Counter({'o': 3, ' ': 3, 'u': 3, 'e': 2, 'l': 2, 't': 2, 'r': 2, '9': 2, 'W': 1,
 'c': 1, 'm': 1, 'G': 1, 'T': 1, 'i': 1, 'a': 1, 's': 1, '!': 1})

Laskuri listalla

Lista on iteroitava objekti, jonka elementit ovat hakasulkeissa.

Listan elementit, kun ne annetaan laskuriin, muunnetaan hashtable-objekteiksi, joissa elementeistรค tulee avaimia ja arvot ovat annetun luettelon elementtien lukumรครคrรค.

Esimerkiksi ['x', 'y', 'z', 'x', 'x', 'x', 'y', 'z']. Kun annat luettelolle laskurin, se antaa sinulle luettelon jokaisen elementin mรครคrรคn.

from collections import Counter
list1 = ['x','y','z','x','x','x','y','z']
print(Counter(list1))

lรคhtรถ:

Counter({'x': 4, 'y': 2, 'z': 2})

Laskuri sanakirjalla

Sanakirjassa on elementtejรค avain/arvo-pareina, ja ne kirjoitetaan hakasulkeisiin.

Kun sanakirja on annettu laskuriin, se muunnetaan hashtable-objekteiksi, joissa elementeistรค tulee avaimia ja arvot ovat annetun sanakirjan elementtien lukumรครคrรครค.

Esimerkki: {'x': 4, 'y': 2, 'z': 2, 'z': 2}. Laskuri-toiminto yrittรครค lรถytรครค kunkin avaimen mรครคrรคn annetusta sanakirjasta.

from collections import Counter
dict1 =  {'x': 4, 'y': 2, 'z': 2, 'z': 2}
print(Counter(dict1))

lรคhtรถ:

Counter({'x': 4, 'y': 2, 'z': 2})

Laskuri Tuplella

Tuple on kokoelma objekteja, jotka on erotettu pilkuilla hakasulkeiden sisรคllรค. Laskuri antaa sinulle annetussa monikossa olevien elementtien mรครคrรคn.

Kun monikko on annettu laskurille, se muunnetaan hashtable-objektiksi, jossa elementeistรค tulee avaimia ja arvot ovat annetun monikon elementtien mรครคrรค.

from collections import Counter
tuple1 = ('x','y','z','x','x','x','y','z')
print(Counter(tuple1))

lรคhtรถ:

Counter({'x': 4, 'y': 2, 'z': 2})

Laskurien kรคyttรคminen, alustaminen ja pรคivittรคminen

Laskuria alustetaan

Laskuri voidaan alustaa vรคlittรคmรคllรค merkkijonoarvo, luettelo, sanakirja tai monikko alla olevan kuvan mukaisesti:

from collections import Counter
print(Counter("Welcome to Guru99 Tutorials!"))   #using string
print(Counter(['x','y','z','x','x','x','y', 'z'])) #using list
print(Counter({'x': 4, 'y': 2, 'z': 2})) #using dictionary
print(Counter(('x','y','z','x','x','x','y', 'z'))) #using tuple

Voit myรถs alustaa tyhjรคn laskurin alla olevan kuvan mukaisesti:

from collections import Counter
_count = Counter()

Pรคivitetรครคn laskuria

Voit lisรคtรค arvoja laskuriin kรคyttรคmรคllรค update()-menetelmรครค.

_count.update('Welcome to Guru99 Tutorials!')

Lopullinen koodi on:

from collections import Counter
_count = Counter()
_count.update('Welcome to Guru99 Tutorials!')
print(_count)

Tuotos on:

Counter({'o': 3, ' ': 3, 'u': 3, 'e': 2, 'l': 2, 't': 2, 'r': 2, '9': 2, 'W': 1,
 'c': 1, 'm': 1, 'G': 1, 'T': 1, 'i': 1, 'a': 1, 's': 1, '!': 1})

Laskuriin pรครคsy

Voit saada arvot laskurista seuraavasti:

from collections import Counter

_count = Counter()
_count.update('Welcome to Guru99 Tutorials!')
print('%s : %d' % ('u', _count['u']))
print('\n')
for char in 'Guru':
    print('%s : %d' % (char, _count[char]))

lรคhtรถ:

u : 3

G : 1
u : 3
r : 2
u : 3

Elementin poistaminen laskurista

Voit poistaa elementin Counterista kรคyttรคmรคllรค del -toimintoa alla olevan esimerkin mukaisesti:

Esimerkiksi:

from collections import Counter
dict1 =  {'x': 4, 'y': 2, 'z': 2}
del dict1["x"]
print(Counter(dict1))

lรคhtรถ:

Counter({'y': 2, 'z': 2})

Aritmeettinen operaatio pรครคllรค Python Laskuri

Aritmeettiset operaatiot, kuten yhteenlasku, osalaskutraction, leikkauspisteen ja yhdisteen voi tehdรค laskurilla alla olevan esimerkin mukaisesti:

Esimerkiksi:

from collections import Counter
counter1 =  Counter({'x': 4, 'y': 2, 'z': -2})

counter2 = Counter({'x1': -12, 'y': 5, 'z':4 })

#Addition
counter3 = counter1 + counter2 # only the values that are positive will be returned.

print(counter3)

#Subtraction
counter4 = counter1 - counter2 # all -ve numbers are excluded.For example z will be z = -2-4=-6, since it is -ve value it is not shown in the output

print(counter4)

#Intersection
counter5 = counter1 & counter2 # it will give all common positive minimum values from counter1 and counter2

print(counter5)

#Union
counter6 = counter1 | counter2 # it will give positive max values from counter1 and counter2

print(counter6)

lรคhtรถ:

Counter({'y': 7, 'x': 4, 'z': 2})
Counter({'x1': 12, 'x': 4})
Counter({'y': 2})
Counter({'y': 5, 'x': 4, 'z': 4})

Kรคytettรคvissรค olevat menetelmรคt Python Laskuri

Counterilla on saatavilla joitakin tรคrkeitรค menetelmiรค, tรคssรค on luettelo samoista:

  • elementit () : Tรคmรค menetelmรค palauttaa sinulle kaikki elementit, joiden lukumรครคrรค on >0. Elementtejรค, joiden mรครคrรค on 0 tai -1, ei palauteta.
  • useimmat_common(arvo): Tรคmรค menetelmรค palauttaa yleisimmรคt elementit laskuriluettelosta.
  • allatract(): Tรคtรค menetelmรครค kรคytetรครคn elementtien vรคhentรคmiseen toisesta laskurista.
  • pรคivittรครค(): Tรคtรค menetelmรครค kรคytetรครคn elementtien pรคivittรคmiseen toisesta laskurista.

Esimerkki: elementit()

from collections import Counter
counter1 =  Counter({'x': 5, 'y': 2, 'z': -2, 'x1':0})

_elements = counter1.elements() # will give you all elements with positive value and count>0
for a in _elements:
    print(a)

lรคhtรถ:

x
x
x
x
x
y
y

Esimerkki: useimmat_common(arvo)

from collections import Counter
counter1 =  Counter({'x': 5, 'y': 12, 'z': -2, 'x1':0})

common_element = counter1.most_common(2) # The dictionary will be sorted as per the most common element first followed by next.
print(common_element)

common_element1 = counter1.most_common() # if the value is not given to most_common , it will sort the dictionary and give the most common elements from the start.The last element will be the least common element.
print(common_element1)

lรคhtรถ:

 [('y', 12), ('x', 5)]
[('y', 12), ('x', 5), ('x1', 0), ('z', -2)]

Esimerkki: alaryhmรคtract()

from collections import Counter
counter1 =  Counter({'x': 5, 'y': 12, 'z': -2, 'x1':0})
counter2 = Counter({'x': 2, 'y':5})

counter1.subtract(counter2)
print(counter1)

lรคhtรถ:

Counter({'y': 7, 'x': 3, 'x1': 0, 'z': -2})

Esimerkki: update()

from collections import Counter
counter1 =  Counter({'x': 5, 'y': 12, 'z': -2, 'x1':0})
counter2 = Counter({'x': 2, 'y':5})
counter1.update(counter2)
print(counter1)

lรคhtรถ:

Counter({'y': 17, 'x': 7, 'x1': 0, 'z': -2})

Mรครคrรครค uudelleen Python

Voit mรครคrittรครค laskurien mรครคrรคn uudelleen alla olevan kuvan mukaisesti:

Oletetaan, ettรค sinulla on sanakirja muodossa : {'x': 5, 'y': 12, 'z': -2, 'x1':0}

Voit muuttaa elementin mรครคrรครค alla olevan kuvan mukaisesti:

from collections import Counter
counter1 =  Counter({'x': 5, 'y': 12, 'z': -2, 'x1':0})

counter1['y'] = 20

print(counter1)

lรคhtรถ: Suorituksen jรคlkeen nรคet, ettรค y-luku on muutettu 12:sta 20:een

Counter({'y': 20, 'x': 5, 'x1': 0, 'z': -2})

Hanki ja aseta elementtien mรครคrรค laskurin avulla

Voit saada elementin mรครคrรคn laskurin avulla seuraavasti:

from collections import Counter
counter1 =  Counter({'x': 5, 'y': 12, 'z': -2, 'x1':0})
print(counter1['y']) # this will give you the count of element 'y'

lรคhtรถ:

12

Voit asettaa elementin mรครคrรคn seuraavasti:

from collections import Counter
counter1 =  Counter({'x': 5, 'y': 12, 'z': -2, 'x1':0})

print(counter1['y'])

counter1['y'] = 20
counter1['y1'] = 10

print(counter1)

lรคhtรถ:

12
Counter({'y': 20, 'y1': 10, 'x': 5, 'x1': 0, 'z': -2})

Yhteenveto

  • Laskuri on sรคiliรถ, joka sisรคltรครค jokaisen sรคiliรถssรค olevien elementtien mรครคrรคn.
  • Counter on alaluokka, joka on saatavilla sanakirjaluokan sisรคllรค.
  • Kรคyttรคen Python Laskurityรถkalulla voit laskea objektin avainarvo-parit, jota kutsutaan myรถs hashtable-objektiksi.
  • Laskuri sรคilyttรครค tiedot jรคrjestรคmรคttรถmรคssรค kokoelmassa, aivan kuten hashtable-objektit. Tรคssรค olevat elementit edustavat avaimia ja niiden mรครคrรครค arvoina.
  • Sen avulla voit laskea kohteet iteroitavassa luettelossa.
  • Aritmeettiset laskutoimitukset, kuten yhteenlasku ja osalaskutracYhdistรคminen, leikkaaminen ja yhdistรคminen voidaan helposti suorittaa laskurilla.
  • Laskuri voi myรถs laskea elementtejรค toiselta laskurilta.
  • Counterissa kรคytettรคvissรค olevat tรคrkeรคt metodit ovat elements(), most_common(value), subtract() ja pรคivitรค().
  • Laskuria voidaan kรคyttรครค merkkijonossa, luettelossa, sanakirjassa ja monissa.

Tiivistรค tรคmรค viesti seuraavasti: