Python Penghitung dalam Koleksi dengan Contoh
Apa itu Python Menangkal?
Python Counter merupakan sebuah wadah yang akan menampung hitungan setiap elemen yang ada pada wadah tersebut. Penghitung adalah subkelas yang tersedia di dalam kelas kamus.
Penghitung adalah subkelas yang tersedia di dalam kelas kamus. Menggunakan Python Alat penghitung, Anda dapat menghitung pasangan nilai kunci dalam suatu objek, juga disebut objek tabel hash.
Mengapa menggunakan Python Menangkal?
Inilah alasan utama untuk menggunakan Python 3 Penghitung:
- Penghitung menyimpan data dalam koleksi tidak berurutan, seperti objek hashtable. Elemen di sini mewakili kunci dan hitungan sebagai nilai.
- Ini memungkinkan Anda menghitung item dalam daftar yang dapat diubah.
- Operasi aritmatika seperti penjumlahan, pengurangan, perpotongan, dan penyatuan dapat dengan mudah dilakukan di Penghitung.
- Penghitung juga dapat menghitung elemen dari penghitung lain
Pengantar Python Melawan
Python Penghitung mengambil masukan dari daftar, tupel, kamus, string, yang semuanya merupakan objek yang dapat diubah, dan itu akan memberi Anda keluaran yang akan menghitung setiap elemen.
sintaks:
Counter(list)
Anggap Anda memiliki daftar berikut:
list1 = ['x','y','z','x','x','x','y', 'z']
Daftar ini memiliki elemen x , y dan z. Saat Anda menggunakan Counter pada daftar ini, ia akan menghitung berapa kali x , y dan z ada. Outputnya jika counter digunakan pada list1 harusnya seperti ini:
Counter({'x': 4, 'y': 2, 'z': 2})
Jadi kita menghitung x sebanyak 4, y sebanyak 2, dan z sebanyak 2.
Untuk menggunakan Counter kita perlu mengimpornya terlebih dahulu seperti yang ditunjukkan pada contoh di bawah ini:
from collections import Counter
Berikut adalah contoh sederhana yang menunjukkan cara kerja modul Counter.
from collections import Counter list1 = ['x','y','z','x','x','x','y', 'z'] print(Counter(list1))
Keluaran:
Counter({'x': 4, 'y': 2, 'z': 2})
Penghitung dengan String
In Python, semuanya adalah objek dan string juga merupakan objek. Python string dapat dibuat hanya dengan menyertakan karakter di dalam tanda kutip ganda. Python tidak mendukung tipe karakter. Ini diperlakukan sebagai string dengan panjang satu, juga dianggap sebagai substring.
Pada contoh di bawah, sebuah string diteruskan ke Counter. Ia mengembalikan format kamus, dengan pasangan kunci/nilai di mana kuncinya adalah elemen dan nilainya adalah hitungannya. Itu juga menganggap ruang sebagai elemen dan memberikan jumlah spasi dalam string.
Contoh:
from collections import Counter my_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})
Penghitung dengan Daftar
Daftar adalah objek yang dapat diulang, yang elemen-elemennya berada di dalam tanda kurung siku.
Elemen-elemen dalam daftar ketika diberikan ke Penghitung akan diubah menjadi objek hashtable dimana 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 memberikan Penghitung pada daftar, itu akan memberi Anda jumlah setiap elemen dalam daftar.
from collections import Counter list1 = ['x','y','z','x','x','x','y','z'] print(Counter(list1))
Keluaran:
Counter({'x': 4, 'y': 2, 'z': 2})
Kontra dengan Kamus
Kamus memiliki elemen-elemen sebagai pasangan kunci/nilai, dan ditulis di dalam tanda kurung kurawal.
Setelah kamus diberikan ke Penghitung, kamus tersebut akan diubah menjadi objek hashtable di mana elemennya akan menjadi kunci, dan nilainya akan menjadi hitungan elemen dari kamus yang diberikan.
Contoh : {'x': 4, 'y': 2, 'z': 2, 'z': 2}. Fungsi Counter akan mencoba mencari jumlah setiap kunci dalam kamus yang diberikan.
from collections import Counter dict1 = {'x': 4, 'y': 2, 'z': 2, 'z': 2} print(Counter(dict1))
Keluaran:
Counter({'x': 4, 'y': 2, 'z': 2})
Kontra dengan Tuple
Tuple adalah kumpulan objek yang dipisahkan oleh koma di dalam tanda kurung bulat. Counter akan memberi Anda jumlah setiap elemen dalam tuple yang diberikan.
Setelah tupel diberikan ke Penghitung, tupel akan diubah menjadi objek hashtable di mana elemen akan menjadi kunci dan nilainya akan menjadi jumlah elemen dari tupel yang diberikan.
from collections import Counter tuple1 = ('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 Penghitung
Penghitung dapat diinisialisasi dengan meneruskan nilai string, daftar, kamus, atau tupel seperti yang ditunjukkan di bawah ini:
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
Anda juga dapat menginisialisasi Counter 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 Penghitung
Untuk mendapatkan nilai dari Counter, Anda dapat 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 : 3 G : 1 u : 3 r : 2 u : 3
Menghapus Elemen dari Counter
Untuk menghapus elemen dari Counter Anda dapat menggunakan del , seperti yang ditunjukkan pada contoh di bawah ini:
Contoh:
from collections import Counter dict1 = {'x': 4, 'y': 2, 'z': 2} del dict1["x"] print(Counter(dict1))
Keluaran:
Counter({'y': 2, 'z': 2})
Operasi Aritmatika pada Python Melawan
Operasi aritmatika seperti penjumlahan, pengurangan, perpotongan dan penyatuan dapat dilakukan pada Counter seperti terlihat pada contoh di bawah ini:
Contoh:
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)
Keluaran:
Counter({'y': 7, 'x': 4, 'z': 2}) Counter({'x1': 12, 'x': 4}) Counter({'y': 2}) Counter({'y': 5, 'x': 4, 'z': 4})
Metode Tersedia di Python Melawan
Ada beberapa metode penting yang tersedia dengan Counter, berikut daftarnya:
- elemen() : Metode ini akan mengembalikan semua elemen dengan jumlah >0. Elemen dengan hitungan 0 atau -1 tidak akan dikembalikan.
- paling_umum(nilai): Metode ini akan mengembalikan Anda elemen paling umum dari daftar Penghitung.
- mengurangi(): Metode ini digunakan untuk mengurangi elemen dari Penghitung lain.
- memperbarui(): Metode ini digunakan untuk memperbarui elemen dari Counter lain.
Contoh : elemen()
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)
Keluaran:
x x x x x y y
Contoh: paling_umum(nilai)
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)
Keluaran:
[('y', 12), ('x', 5)] [('y', 12), ('x', 5), ('x1', 0), ('z', -2)]
Contoh: kurangi()
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)
Keluaran:
Counter({'y': 7, 'x': 3, 'x1': 0, 'z': -2})
Contoh: perbarui()
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)
Keluaran:
Counter({'y': 17, 'x': 7, 'x1': 0, 'z': -2})
Menugaskan Kembali Hitungan masuk Python
Anda dapat menetapkan ulang jumlah Penghitung seperti yang ditunjukkan di bawah ini:
Anggaplah 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 Counter counter1 = Counter({'x': 5, 'y': 12, 'z': -2, 'x1':0}) counter1['y'] = 20 print(counter1)
Keluaran: Setelah dijalankan, Anda akan melihat bahwa hitungan y diubah dari 12 menjadi 20
Counter({'y': 20, 'x': 5, 'x1': 0, 'z': -2})
Dapatkan dan atur jumlah Elemen menggunakan Penghitung
Untuk menghitung suatu elemen menggunakan Counter Anda dapat melakukan hal berikut:
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'
Keluaran:
12
Untuk mengatur jumlah elemen Anda dapat melakukan hal berikut:
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)
Keluaran:
12 Counter({'y': 20, 'y1': 10, 'x': 5, 'x1': 0, 'z': -2})
Kesimpulan
- Counter merupakan sebuah wadah yang akan menampung hitungan setiap elemen yang ada pada wadah tersebut.
- Counter adalah subkelas yang tersedia di dalam kelas kamus.
- Menggunakan Python Alat penghitung, Anda dapat menghitung pasangan nilai kunci dalam suatu objek, juga disebut objek hashtable.
- Penghitung menyimpan data dalam koleksi tidak berurutan, seperti objek hashtable. Elemen di sini mewakili kunci dan hitungan sebagai nilai.
- Ini memungkinkan Anda menghitung item dalam daftar yang dapat diubah.
- Operasi aritmatika seperti penjumlahan, pengurangan, perpotongan, dan penyatuan dapat dengan mudah dilakukan di 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, daftar, kamus, dan tupel.