Penghitung Python dalam Koleksi dengan Contoh

Daftar Isi:

Anonim

Apa itu Penghitung Python?

Python Counter adalah wadah yang akan menampung hitungan setiap elemen yang ada di wadah. Penghitung adalah sub-kelas yang tersedia di dalam kelas kamus.

Penghitung adalah sub-kelas yang tersedia di dalam kelas kamus. Menggunakan alat Penghitung Python, Anda dapat menghitung pasangan nilai kunci dalam sebuah objek, juga disebut objek tabel hash.

Mengapa menggunakan Python Counter?

Berikut, alasan utama menggunakan Python 3 Counter:

  • Penghitung menyimpan data dalam koleksi yang tidak berurutan, seperti objek yang memiliki hashtable. Elemen di sini mewakili kunci dan hitungan sebagai nilai.
  • Ini memungkinkan Anda menghitung item dalam daftar yang dapat berulang.
  • Operasi aritmatika seperti penjumlahan, pengurangan, persimpangan, dan penyatuan dapat dengan mudah dilakukan pada Penghitung.
  • Penghitung juga dapat menghitung elemen dari penghitung lain

Dalam tutorial Python ini Anda akan belajar:

  • Apa itu Penghitung Python?
  • Mengapa menggunakan Python Counter?
  • Pengantar Python Counter
  • Counter dengan String
  • Counter dengan List
  • Counter dengan Dictionary
  • Counter dengan Tuple
  • Mengakses, Menginisialisasi, dan Memperbarui Penghitung
  • Menghapus Elemen dari Penghitung
  • Operasi aritmatika di Python Counter
  • Metode yang Tersedia di Python Counter
  • Menetapkan Ulang Hitungan dengan Python
  • Dapatkan dan atur hitungan Elemen menggunakan Penghitung

Pengantar Python Counter

Python Counter memasukkan masukan daftar, tupel, kamus, string, yang semuanya merupakan objek yang dapat diulang, dan itu akan memberi Anda keluaran yang akan memiliki jumlah setiap elemen.

Sintaksis:

Counter(list)

Pertimbangkan Anda memiliki daftar berikut:

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

Daftar tersebut memiliki elemen x, y dan z. Saat Anda menggunakan Penghitung pada daftar ini, ini akan menghitung berapa kali x, y, dan z ada. Output jika penghitung digunakan pada list1 harus seperti ini:

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

Jadi kita memiliki hitungan x sebagai 4, y sebagai 2 dan z sebagai 2.

Untuk menggunakan Counter kita perlu mengimpornya terlebih dahulu seperti yang ditunjukkan pada contoh yang diberikan di bawah ini:

from collections import Counter

Berikut adalah contoh sederhana, yang menunjukkan cara kerja modul Counter.

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

Keluaran:

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

Counter dengan String

Di Python, semuanya adalah objek dan string adalah objek juga. String Python dapat dibuat hanya dengan memasukkan karakter dalam tanda kutip ganda. Python tidak mendukung tipe karakter. Ini diperlakukan sebagai string dengan panjang satu, juga dianggap sebagai substring.

Pada contoh di bawah ini, string diteruskan ke Counter. Ini mengembalikan format kamus, dengan pasangan kunci / nilai di mana kuncinya adalah elemen dan nilai adalah hitungannya. Ini juga menganggap ruang sebagai elemen dan memberikan jumlah spasi dalam string.

Contoh:

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

Keluaran:

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})

Counter dengan List

List adalah objek iterable yang memiliki elemen di dalam tanda kurung siku.

Elemen-elemen dalam daftar ketika diberikan ke Penghitung akan diubah menjadi objek hashtable di mana elemen-elemen tersebut akan menjadi kunci dan nilainya akan menjadi jumlah elemen dari daftar yang diberikan.

Misalnya ['x', 'y', 'z', 'x', 'x', 'x', 'y', 'z']. Setelah Anda memberi daftar Penghitung, itu akan memberi Anda hitungan setiap elemen dalam daftar.

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

Keluaran:

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

Counter dengan Dictionary

Sebuah kamus memiliki elemen sebagai pasangan kunci / nilai, dan mereka ditulis di dalam tanda kurung kurawal.

Setelah kamus diberikan ke Penghitung, itu akan diubah menjadi objek hashtable di mana elemen akan menjadi kunci, dan nilainya akan menjadi hitungan elemen dari kamus yang diberikan.

Misalnya: {'x': 4, 'y': 2, 'z': 2, 'z': 2}. Fungsi Penghitung akan mencoba menemukan hitungan masing-masing kunci dalam kamus yang diberikan.

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

Keluaran:

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

Counter dengan Tuple

Tuple adalah kumpulan objek yang dipisahkan dengan koma di dalam tanda kurung siku. Penghitung akan memberi Anda hitungan masing-masing elemen dalam tupel yang diberikan.

Setelah tupel diberikan ke Counter, itu akan diubah menjadi objek hashtable dimana elemen akan menjadi kunci dan nilainya akan menjadi jumlah elemen dari tupel yang diberikan.

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

Keluaran:

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

Mengakses, Menginisialisasi, dan Memperbarui Penghitung

Menginisialisasi Counter

Counter dapat diinisialisasi dengan melewatkan nilai string, list, dictionary, atau tuple seperti yang ditunjukkan di bawah ini:

from collections import Counterprint(Counter("Welcome to Guru99 Tutorials!")) #using stringprint(Counter(['x','y','z','x','x','x','y', 'z'])) #using listprint(Counter({'x': 4, 'y': 2, 'z': 2})) #using dictionaryprint(Counter(('x','y','z','x','x','x','y', 'z'))) #using tuple

Anda juga dapat menginisialisasi Penghitung kosong seperti yang ditunjukkan di bawah ini:

from collections import Counter_count = Counter()

Memperbarui Penghitung

Anda dapat menambahkan nilai ke Penghitung dengan menggunakan metode update ().

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

Kode terakhirnya adalah:

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

Outputnya adalah:

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})

Mengakses Counter

Untuk mendapatkan nilai dari Counter, Anda bisa melakukan hal berikut:

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]))

Keluaran:

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

Menghapus Elemen dari Penghitung

Untuk menghapus elemen dari Counter Anda dapat menggunakan del, seperti yang ditunjukkan pada contoh di bawah ini:

Contoh:

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

Keluaran:

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

Operasi aritmatika di Python Counter

Operasi aritmatika seperti penjumlahan, pengurangan, perpotongan, dan penyatuan dapat dilakukan pada Penghitung seperti yang ditunjukkan pada contoh di bawah ini:

Contoh:

from collections import Countercounter1 = Counter({'x': 4, 'y': 2, 'z': -2})counter2 = Counter({'x1': -12, 'y': 5, 'z':4 })#Additioncounter3 = counter1 + counter2 # only the values that are positive will be returned.print(counter3)#Subtractioncounter4 = 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 outputprint(counter4)#Intersectioncounter5 = counter1 & counter2 # it will give all common positive minimum values from counter1 and counter2print(counter5)#Unioncounter6 = counter1 | counter2 # it will give positive max values from counter1 and counter2print(counter6)

Keluaran:

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

Metode yang Tersedia di Python Counter

Ada beberapa metode penting yang tersedia dengan Counter, berikut adalah daftarnya:

  • Elements () : Metode ini akan mengembalikan Anda semua elemen dengan count> 0. Elemen dengan hitungan 0 atau -1 tidak akan dikembalikan.
  • most_common (value): Metode ini akan mengembalikan Anda elemen paling umum dari daftar Counter.
  • subtract (): Metode ini digunakan untuk mengurangi elemen dari Penghitung lain.
  • update (): Metode ini digunakan untuk memperbarui elemen dari Penghitung lain.

Contoh: elemen ()

from collections import Countercounter1 = Counter({'x': 5, 'y': 2, 'z': -2, 'x1':0})_elements = counter1.elements() # will give you all elements with positive value and count>0for a in _elements:print(a)

Keluaran:

xxxxxyy

Contoh: most_common (nilai)

from collections import Countercounter1 = 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)

Keluaran:

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

Contoh: subtract ()

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

Keluaran:

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

Contoh: update ()

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

Keluaran:

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

Menetapkan Ulang Hitungan dengan Python

Anda dapat menetapkan kembali hitungan Penghitung seperti yang ditunjukkan di bawah ini:

Anggap Anda memiliki kamus sebagai: {'x': 5, 'y': 12, 'z': -2, 'x1': 0}

Anda dapat mengubah jumlah elemen seperti yang ditunjukkan di bawah ini:

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

Output: Setelah dieksekusi, Anda akan melihat bahwa jumlah y berubah dari 12 menjadi 20

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

Dapatkan dan atur hitungan Elemen menggunakan Penghitung

Untuk mendapatkan hitungan elemen menggunakan Counter Anda bisa melakukan sebagai berikut:

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

Keluaran:

12

Untuk mengatur hitungan elemen Anda dapat melakukan sebagai berikut:

from collections import Countercounter1 = Counter({'x': 5, 'y': 12, 'z': -2, 'x1':0})print(counter1['y'])counter1['y'] = 20counter1['y1'] = 10print(counter1)

Keluaran:

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

Ringkasan:

  • Penghitung adalah wadah yang akan menampung hitungan setiap elemen yang ada di dalam wadah.
  • Penghitung adalah sub-kelas yang tersedia di dalam kelas kamus.
  • Dengan menggunakan alat Python Counter, Anda dapat menghitung pasangan nilai-kunci dalam sebuah objek, juga disebut objek hashtable.
  • Penghitung menyimpan data dalam koleksi yang tidak berurutan, seperti objek yang memiliki hashtable. Elemen di sini mewakili kunci dan hitungan sebagai nilai.
  • Ini memungkinkan Anda menghitung item dalam daftar yang dapat berulang.
  • Operasi aritmatika seperti penjumlahan, pengurangan, persimpangan, dan penyatuan dapat dengan mudah dilakukan pada Penghitung.
  • Penghitung juga dapat menghitung elemen dari penghitung lain.
  • Metode penting yang tersedia di Counter adalah elements (), most_common (value), subtract () dan update ().
  • Penghitung dapat digunakan pada string, list, dictionary, dan tuple.