{"id":39057,"date":"2026-02-13T13:40:38","date_gmt":"2026-02-13T10:40:38","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=39057"},"modified":"2026-02-13T13:40:38","modified_gmt":"2026-02-13T10:40:38","slug":"python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/","title":{"rendered":"Python Counter: Koleksiyonlardaki Nesnelerin Say\u0131m\u0131n\u0131 Kolayla\u015ft\u0131rma"},"content":{"rendered":"<p><body><\/p>\n<h2>Python Counter: Koleksiyonlardaki Nesnelerin Say\u0131m\u0131n\u0131 Kolayla\u015ft\u0131rma<\/h2>\n<p>Python, veri yap\u0131lar\u0131 ve algoritmalar\u0131 kolayla\u015ft\u0131ran g\u00fc\u00e7l\u00fc ve esnek bir dildir. Bu esnekli\u011fi sa\u011flayan temel unsurlardan biri de <code>collections<\/code> mod\u00fcl\u00fcd\u00fcr. Bu mod\u00fcl, standart s\u00f6zl\u00fck, liste, k\u00fcme ve demet veri tiplerinin i\u015flevselli\u011fini art\u0131ran veya \u00f6zel kullan\u0131m senaryolar\u0131na y\u00f6nelik yeni veri tipleri sunar. <code>collections<\/code> mod\u00fcl\u00fcn\u00fcn en pop\u00fcler ve kullan\u0131\u015fl\u0131 \u00fcyelerinden biri de \u015f\u00fcphesiz <code>Counter<\/code> s\u0131n\u0131f\u0131d\u0131r.<\/p>\n<p><code>Counter<\/code>, bir iterable i\u00e7indeki her bir \u00f6\u011fenin say\u0131s\u0131n\u0131 tutmak i\u00e7in tasarlanm\u0131\u015f, bir s\u00f6zl\u00fck (dictionary) alt s\u0131n\u0131f\u0131d\u0131r. \u00d6zellikle bir listedeki elemanlar\u0131n, bir metindeki kelimelerin veya herhangi bir koleksiyondaki nesnelerin frekans\u0131n\u0131 (s\u0131kl\u0131\u011f\u0131n\u0131) h\u0131zl\u0131 ve etkili bir \u015fekilde saymak gerekti\u011finde devreye girer. Geleneksel bir s\u00f6zl\u00fckle bu i\u015flemi manuel olarak yapmak m\u00fcmk\u00fcn olsa da, <code>Counter<\/code> bu g\u00f6revi \u00e7ok daha k\u0131sa, okunabilir ve optimize edilmi\u015f bir \u015fekilde ger\u00e7ekle\u015ftirir. Bu makale, Python <code>Counter<\/code> s\u0131n\u0131f\u0131n\u0131n derinlemesine bir incelemesini sunacak, temel kullan\u0131mlar\u0131ndan geli\u015fmi\u015f \u00f6zelliklerine, matematiksel i\u015flemlerinden ger\u00e7ek d\u00fcnya uygulamalar\u0131na kadar geni\u015f bir yelpazeyi kapsayacakt\u0131r.<\/p>\n<h3>Counter Nedir ve Neden Kullan\u0131l\u0131r?<\/h3>\n<p><code>collections.Counter<\/code> s\u0131n\u0131f\u0131, hash&#8217;lenebilir nesnelerin koleksiyonlar\u0131n\u0131 saymak i\u00e7in \u00f6zel olarak tasarlanm\u0131\u015ft\u0131r. Temel olarak, bir s\u00f6zl\u00fck gibi davran\u0131r; anahtarlar say\u0131lan \u00f6\u011feleri, de\u011ferler ise bu \u00f6\u011felerin say\u0131s\u0131n\u0131 temsil eder. Ancak standart bir s\u00f6zl\u00fckten farkl\u0131 olarak, baz\u0131 ek \u00f6zellikler ve y\u00f6ntemler sunar ki bu da onu say\u0131m i\u015flemleri i\u00e7in vazge\u00e7ilmez k\u0131lar.<\/p>\n<p>Bir koleksiyondaki \u00f6\u011felerin frekans\u0131n\u0131 bulmak, programlamada olduk\u00e7a yayg\u0131n bir g\u00f6revdir. \u00d6rne\u011fin, bir metindeki kelime frekanslar\u0131n\u0131 analiz etmek, bir web sunucusunun log dosyalar\u0131ndaki IP adreslerinin da\u011f\u0131l\u0131m\u0131n\u0131 g\u00f6rmek veya bir anketten gelen verilerdeki belirli bir se\u00e7ene\u011fin ka\u00e7 kez i\u015faretlendi\u011fini belirlemek isteyebilirsiniz. Bu t\u00fcr senaryolarda <code>Counter<\/code>, manuel olarak bir d\u00f6ng\u00fc yaz\u0131p s\u00f6zl\u00fck g\u00fcncellemekten \u00e7ok daha zarif ve verimli bir \u00e7\u00f6z\u00fcm sunar.<\/p>\n<h3>Temel Kullan\u0131m<\/h3>\n<p><code>Counter<\/code> s\u0131n\u0131f\u0131n\u0131 kullanmaya ba\u015flamak i\u00e7in \u00f6ncelikle <code>collections<\/code> mod\u00fcl\u00fcnden i\u00e7e aktarman\u0131z gerekir.<\/p>\n<pre><code>\nfrom collections import Counter\n<\/code><\/pre>\n<p><code>Counter<\/code> nesneleri, bir iterable (liste, demet, dize vb.) veya anahtar kelime arg\u00fcmanlar\u0131 (keyword arguments) arac\u0131l\u0131\u011f\u0131yla olu\u015fturulabilir.<\/p>\n<h4>Iterable&#8217;dan Counter Olu\u015fturma<\/h4>\n<p>En yayg\u0131n kullan\u0131m \u015fekli, bir liste veya dize gibi bir iterable&#8217;\u0131 do\u011frudan <code>Counter<\/code> yap\u0131c\u0131 metoduna ge\u00e7irmektir.<\/p>\n<pre><code>\n<h2>Bir listeden Counter olu\u015fturma<\/h2>\nliste = ['elma', 'armut', 'elma', 'muz', 'armut', 'elma']\nmeyve_sayilari = Counter(liste)\nprint(meyve_sayilari)\n<h2>\u00c7\u0131kt\u0131: Counter({'elma': 3, 'armut': 2, 'muz': 1})<\/h2>\n\n<h2>Bir dizeden Counter olu\u015fturma (her karakteri sayar)<\/h2>\nmetin = \"abracadabra\"\nkarakter_sayilari = Counter(metin)\nprint(karakter_sayilari)\n<h2>\u00c7\u0131kt\u0131: Counter({'a': 5, 'b': 2, 'r': 2, 'c': 1, 'd': 1})<\/h2>\n\n<h2>Bir demetten Counter olu\u015fturma<\/h2>\ndemet = (1, 2, 3, 1, 2, 1)\nsayi_sayilari = Counter(demet)\nprint(sayi_sayilari)\n<h2>\u00c7\u0131kt\u0131: Counter({1: 3, 2: 2, 3: 1})<\/h2>\n<\/code><\/pre>\n<p>G\u00f6rd\u00fc\u011f\u00fcn\u00fcz gibi, <code>Counter<\/code> her benzersiz \u00f6\u011feyi bir anahtar olarak al\u0131r ve bu \u00f6\u011fenin ka\u00e7 kez ge\u00e7ti\u011fini bir de\u011fer olarak atar.<\/p>\n<h4>S\u00f6zl\u00fckten Counter Olu\u015fturma<\/h4>\n<p>E\u011fer zaten \u00f6\u011fe-say\u0131 \u00e7iftlerini i\u00e7eren bir s\u00f6zl\u00fc\u011f\u00fcn\u00fcz varsa, bunu do\u011frudan bir <code>Counter<\/code> nesnesine d\u00f6n\u00fc\u015ft\u00fcrebilirsiniz.<\/p>\n<pre><code>\nmevcut_sayilar = {'elma': 3, 'armut': 2, 'muz': 1}\nmeyve_sayilari = Counter(mevcut_sayilar)\nprint(meyve_sayilari)\n<h2>\u00c7\u0131kt\u0131: Counter({'elma': 3, 'armut': 2, 'muz': 1})<\/h2>\n<\/code><\/pre>\n<h4>Anahtar Kelime Arg\u00fcmanlar\u0131 ile Counter Olu\u015fturma<\/h4>\n<p>\u00d6\u011fe ve say\u0131m de\u011ferlerini do\u011frudan anahtar kelime arg\u00fcmanlar\u0131 olarak da belirtebilirsiniz.<\/p>\n<pre><code>\nurun_stok = Counter(kalem=10, silgi=5, defter=20)\nprint(urun_stok)\n<h2>\u00c7\u0131kt\u0131: Counter({'kalem': 10, 'defter': 20, 'silgi': 5})<\/h2>\n<\/code><\/pre>\n<h3>Counter Nesnesinin \u00d6zellikleri ve Metotlar\u0131<\/h3>\n<p><code>Counter<\/code> bir s\u00f6zl\u00fck alt s\u0131n\u0131f\u0131 oldu\u011fu i\u00e7in, \u00e7o\u011fu s\u00f6zl\u00fck metodunu ve davran\u0131\u015f\u0131n\u0131 miras al\u0131r. Ancak kendine \u00f6zg\u00fc baz\u0131 ek metotlar\u0131 da vard\u0131r ki bunlar onu say\u0131m i\u015flemleri i\u00e7in \u00e7ok daha g\u00fc\u00e7l\u00fc k\u0131lar.<\/p>\n<h4>S\u00f6zl\u00fck Benzeri Davran\u0131\u015f<\/h4>\n<p>Bir <code>Counter<\/code> nesnesine, standart bir s\u00f6zl\u00fck gibi eri\u015febilir, eleman ekleyebilir veya silebilirsiniz.<\/p>\n<pre><code>\nmeyve_sayilari = Counter(['elma', 'armut', 'elma', 'muz', 'armut', 'elma'])\n\n<h2>\u00d6\u011felere eri\u015fim<\/h2>\nprint(meyve_sayilari['elma'])  # \u00c7\u0131kt\u0131: 3\nprint(meyve_sayilari['muz'])   # \u00c7\u0131kt\u0131: 1\n\n<h2>Olmayan bir \u00f6\u011feye eri\u015fim<\/h2>\n<h2>Standart bir s\u00f6zl\u00fckten farkl\u0131 olarak, olmayan bir anahtara eri\u015fmeye \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131zda KeyError yerine 0 d\u00f6nd\u00fcr\u00fcr.<\/h2>\nprint(meyve_sayilari['\u00e7ilek']) # \u00c7\u0131kt\u0131: 0\n\n<h2>\u00d6\u011felere atama veya ekleme<\/h2>\nmeyve_sayilari['\u00e7ilek'] = 5\nprint(meyve_sayilari) # \u00c7\u0131kt\u0131: Counter({'elma': 3, 'armut': 2, '\u00e7ilek': 5, 'muz': 1})\n\n<h2>Bir \u00f6\u011feyi silme<\/h2>\ndel meyve_sayilari['muz']\nprint(meyve_sayilari) # \u00c7\u0131kt\u0131: Counter({'elma': 3, 'armut': 2, '\u00e7ilek': 5})\n\n<h2>len(), keys(), values(), items() gibi s\u00f6zl\u00fck metotlar\u0131 da \u00e7al\u0131\u015f\u0131r<\/h2>\nprint(len(meyve_sayilari))    # \u00c7\u0131kt\u0131: 3\nprint(meyve_sayilari.keys())  # \u00c7\u0131kt\u0131: dict_keys(['elma', 'armut', '\u00e7ilek'])\nprint(meyve_sayilari.values())# \u00c7\u0131kt\u0131: dict_values([3, 2, 5])\nprint(meyve_sayilari.items()) # \u00c7\u0131kt\u0131: dict_items([('elma', 3), ('armut', 2), ('\u00e7ilek', 5)])\n<\/code><\/pre>\n<h4><code>elements()<\/code> Metodu<\/h4>\n<p><code>elements()<\/code> metodu, her bir \u00f6\u011feyi kendi say\u0131m\u0131 kadar tekrarlayan bir iterator d\u00f6nd\u00fcr\u00fcr. Bu, say\u0131lm\u0131\u015f \u00f6\u011feleri orijinal listelerine geri d\u00f6n\u00fc\u015ft\u00fcrmek istedi\u011finizde kullan\u0131\u015fl\u0131d\u0131r. \u00d6\u011feler rastgele bir s\u0131rayla d\u00f6nd\u00fcr\u00fcl\u00fcr.<\/p>\n<pre><code>\nmeyve_sayilari = Counter({'elma': 3, 'armut': 2, 'muz': 1})\nprint(list(meyve_sayilari.elements()))\n<h2>\u00c7\u0131kt\u0131: ['elma', 'elma', 'elma', 'armut', 'armut', 'muz'] (s\u0131ra de\u011fi\u015febilir)<\/h2>\n<\/code><\/pre>\n<h4><code>most_common(n)<\/code> Metodu<\/h4>\n<p>Bu muhtemelen <code>Counter<\/code>&#8216;\u0131n en \u00e7ok kullan\u0131lan ve en g\u00fc\u00e7l\u00fc metodudur. <code>most_common(n)<\/code>, en s\u0131k ge\u00e7en <code>n<\/code> \u00f6\u011feyi ve bunlar\u0131n say\u0131mlar\u0131n\u0131 bir liste i\u00e7inde demetler (tuple) halinde d\u00f6nd\u00fcr\u00fcr. E\u011fer <code>n<\/code> belirtilmezse veya <code>None<\/code> ise, t\u00fcm \u00f6\u011feleri en s\u0131k ge\u00e7enden en az ge\u00e7ene do\u011fru s\u0131ralanm\u0131\u015f olarak d\u00f6nd\u00fcr\u00fcr.<\/p>\n<pre><code>\nmetin = \"bu bir deneme metnidir deneme metni\"\nkelime_sayilari = Counter(metin.split())\nprint(kelime_sayilari)\n<h2>\u00c7\u0131kt\u0131: Counter({'deneme': 2, 'metnidir': 1, 'metni': 1, 'bu': 1, 'bir': 1})<\/h2>\n\n<h2>En s\u0131k ge\u00e7en 2 kelime<\/h2>\nprint(kelime_sayilari.most_common(2))\n<h2>\u00c7\u0131kt\u0131: [('deneme', 2), ('metnidir', 1)]<\/h2>\n\n<h2>T\u00fcm kelimeleri frekanslar\u0131na g\u00f6re s\u0131ral\u0131 olarak<\/h2>\nprint(kelime_sayilari.most_common())\n<h2>\u00c7\u0131kt\u0131: [('deneme', 2), ('metnidir', 1), ('metni', 1), ('bu', 1), ('bir', 1)]<\/h2>\n<\/code><\/pre>\n<p>E\u011fer iki \u00f6\u011fenin say\u0131m\u0131 e\u015fitse, bunlar\u0131n s\u0131ralamas\u0131 belirsizdir (yani Python s\u00fcr\u00fcm\u00fcne veya \u00e7al\u0131\u015fma zaman\u0131na g\u00f6re de\u011fi\u015febilir).<\/p>\n<h4><code>update()<\/code> Metodu<\/h4>\n<p><code>update()<\/code> metodu, bir <code>Counter<\/code> nesnesini ba\u015fka bir iterable veya bir ba\u015fka <code>Counter<\/code> nesnesi ile g\u00fcnceller. \u00d6\u011felerin say\u0131mlar\u0131 eklenir.<\/p>\n<pre><code>\nc = Counter({'elma': 3, 'armut': 2})\n\n<h2>Bir iterable ile g\u00fcncelleme<\/h2>\nc.update(['elma', 'muz', 'muz'])\nprint(c)\n<h2>\u00c7\u0131kt\u0131: Counter({'elma': 4, 'armut': 2, 'muz': 2})<\/h2>\n\n<h2>Ba\u015fka bir Counter ile g\u00fcncelleme<\/h2>\nd = Counter({'elma': 1, '\u00e7ilek': 4})\nc.update(d)\nprint(c)\n<h2>\u00c7\u0131kt\u0131: Counter({'elma': 5, 'muz': 2, 'armut': 2, '\u00e7ilek': 4})<\/h2>\n<\/code><\/pre>\n<h4><code>subtract()<\/code> Metodu<\/h4>\n<p><code>subtract()<\/code> metodu, <code>update()<\/code>&#8216;in aksine, bir <code>Counter<\/code> nesnesinin say\u0131mlar\u0131ndan ba\u015fka bir iterable veya <code>Counter<\/code> nesnesinin say\u0131mlar\u0131n\u0131 \u00e7\u0131kar\u0131r. Bu i\u015flem sonucunda say\u0131mlar negatif de\u011ferler alabilir.<\/p>\n<pre><code>\nc = Counter({'elma': 5, 'armut': 3, 'muz': 2})\n\n<h2>Bir iterable ile \u00e7\u0131karma<\/h2>\nc.subtract(['elma', 'armut', 'armut', '\u00e7ilek'])\nprint(c)\n<h2>\u00c7\u0131kt\u0131: Counter({'elma': 4, 'muz': 2, 'armut': 1, '\u00e7ilek': -1})<\/h2>\n\n<h2>Ba\u015fka bir Counter ile \u00e7\u0131karma<\/h2>\nd = Counter({'elma': 2, 'muz': 3})\nc.subtract(d)\nprint(c)\n<h2>\u00c7\u0131kt\u0131: Counter({'elma': 2, 'armut': 1, '\u00e7ilek': -1, 'muz': -1})<\/h2>\n<\/code><\/pre>\n<p><code>subtract()<\/code> metodunun <code>update()<\/code>&#8216;den fark\u0131, <code>update()<\/code>&#8216;in her zaman pozitif say\u0131mlar eklemesi, <code>subtract()<\/code>&#8216;in ise say\u0131mlar\u0131 azaltabilmesi ve negatif sonu\u00e7lara yol a\u00e7abilmesidir.<\/p>\n<h3>Matematiksel \u0130\u015flemler<\/h3>\n<p><code>Counter<\/code> nesneleri, koleksiyonlar\u0131n birle\u015fimi ve kesi\u015fimi gibi i\u015flemleri ger\u00e7ekle\u015ftirmek i\u00e7in standart aritmetik operat\u00f6rleri (<code>+<\/code>, <code>-<\/code>, <code>&<\/code>, <code>|<\/code>) destekler. Bu, \u00f6zellikle k\u00fcme teorisi benzeri i\u015flemlerde veya iki farkl\u0131 veri setinin say\u0131mlar\u0131n\u0131 birle\u015ftirmede \u00e7ok kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n<h4>Toplama (<code>+<\/code>)<\/h4>\n<p>\u0130ki <code>Counter<\/code> nesnesini toplad\u0131\u011f\u0131n\u0131zda, her iki <code>Counter<\/code>&#8216;da da bulunan \u00f6\u011felerin say\u0131mlar\u0131 birle\u015ftirilir (eklenir). Yaln\u0131zca pozitif sonu\u00e7lar dahil edilir.<\/p>\n<pre><code>\nc1 = Counter(a=3, b=1)\nc2 = Counter(a=1, b=2, c=1)\nc3 = c1 + c2\nprint(c3)\n<h2>\u00c7\u0131kt\u0131: Counter({'a': 4, 'b': 3, 'c': 1})<\/h2>\n<\/code><\/pre>\n<h4>\u00c7\u0131karma (<code>-<\/code>)<\/h4>\n<p>Bir <code>Counter<\/code> nesnesinden di\u011ferini \u00e7\u0131kard\u0131\u011f\u0131n\u0131zda, ikinci <code>Counter<\/code>&#8216;daki \u00f6\u011felerin say\u0131mlar\u0131 ilk <code>Counter<\/code>&#8216;dan \u00e7\u0131kar\u0131l\u0131r. Yaln\u0131zca pozitif sonu\u00e7lar dahil edilir. <code>subtract()<\/code> metodundan farkl\u0131 olarak, negatif say\u0131mlar g\u00f6z ard\u0131 edilir.<\/p>\n<pre><code>\nc1 = Counter(a=3, b=1, c=5)\nc2 = Counter(a=1, b=2, d=1)\nc3 = c1 - c2\nprint(c3)\n<h2>\u00c7\u0131kt\u0131: Counter({'c': 5, 'a': 2})<\/h2>\n<h2>b'nin say\u0131m\u0131 1-2=-1 oldu\u011fu i\u00e7in sonu\u00e7ta yer almaz. d ise c1'de olmad\u0131\u011f\u0131 i\u00e7in g\u00f6z ard\u0131 edilir.<\/h2>\n<\/code><\/pre>\n<h4>Kesi\u015fim (Minimum) (<code>&<\/code>)<\/h4>\n<p>\u0130ki <code>Counter<\/code> nesnesinin kesi\u015fimi, her iki <code>Counter<\/code>&#8216;da da bulunan \u00f6\u011felerin minimum say\u0131m\u0131n\u0131 al\u0131r. Bu, k\u00fcme kesi\u015fimine benzer bir i\u015flemdir.<\/p>\n<pre><code>\nc1 = Counter(a=3, b=1, c=5)\nc2 = Counter(a=1, b=2, d=1)\nc3 = c1 & c2\nprint(c3)\n<h2>\u00c7\u0131kt\u0131: Counter({'a': 1, 'b': 1})<\/h2>\n<h2>a: min(3, 1) = 1; b: min(1, 2) = 1; c ve d sadece birinde oldu\u011fu i\u00e7in dahil edilmez.<\/h2>\n<\/code><\/pre>\n<h4>Birle\u015fim (Maksimum) (<code>|<\/code>)<\/h4>\n<p>\u0130ki <code>Counter<\/code> nesnesinin birle\u015fimi, her iki <code>Counter<\/code>&#8216;da da bulunan \u00f6\u011felerin maksimum say\u0131m\u0131n\u0131 al\u0131r. Bu da k\u00fcme birle\u015fimine benzer bir i\u015flemdir.<\/p>\n<pre><code>\nc1 = Counter(a=3, b=1, c=5)\nc2 = Counter(a=1, b=2, d=1)\nc3 = c1 | c2\nprint(c3)\n<h2>\u00c7\u0131kt\u0131: Counter({'a': 3, 'c': 5, 'b': 2, 'd': 1})<\/h2>\n<h2>a: max(3, 1) = 3; b: max(1, 2) = 2; c ve d tek ba\u015flar\u0131na oldu\u011fu i\u00e7in kendi de\u011ferleri al\u0131n\u0131r.<\/h2>\n<\/code><\/pre>\n<h4>Pozitif Say\u0131mlar\u0131 Filtreleme (<code>+c<\/code>)<\/h4>\n<p>Tek bir <code>Counter<\/code> nesnesine tekli <code>+<\/code> operat\u00f6r\u00fcn\u00fc uygulamak, t\u00fcm s\u0131f\u0131r veya negatif say\u0131ml\u0131 \u00f6\u011feleri kald\u0131rarak yaln\u0131zca pozitif say\u0131mlar\u0131 olan \u00f6\u011feleri i\u00e7eren yeni bir <code>Counter<\/code> d\u00f6nd\u00fcr\u00fcr.<\/p>\n<pre><code>\nc = Counter(a=3, b=-1, c=0, d=2)\nprint(+c)\n<h2>\u00c7\u0131kt\u0131: Counter({'a': 3, 'd': 2})<\/h2>\n<\/code><\/pre>\n<h3>Ger\u00e7ek D\u00fcnya Uygulamalar\u0131 ve Kullan\u0131m Senaryolar\u0131<\/h3>\n<p><code>Counter<\/code>&#8216;\u0131n esnekli\u011fi ve verimlili\u011fi, onu bir\u00e7ok farkl\u0131 programlama probleminde de\u011ferli bir ara\u00e7 haline getirir.<\/p>\n<h4>Kelime Frekans\u0131 Analizi<\/h4>\n<p>Do\u011fal Dil \u0130\u015fleme (NLP) alan\u0131nda, metinlerdeki kelime frekanslar\u0131n\u0131 analiz etmek yayg\u0131n bir g\u00f6revdir. <code>Counter<\/code>, bu g\u00f6revi basitle\u015ftirir.<\/p>\n<pre><code>\nimport re\nmetin = \"Python programlama dili \u00e7ok g\u00fc\u00e7l\u00fc bir dildir. Python ile bir\u00e7ok \u015fey yapabilirsiniz.\"\nkelimeler = re.findall(r'\\b\\w+\\b', metin.lower()) # Metni k\u00fc\u00e7\u00fck harfe \u00e7evir ve kelimelere ay\u0131r\nkelime_sayilari = Counter(kelimeler)\nprint(kelime_sayilari.most_common(5))\n<h2>\u00c7\u0131kt\u0131: [('python', 2), ('bir', 2), ('dilidir', 1), ('\u00e7ok', 1), ('g\u00fc\u00e7l\u00fc', 1)]<\/h2>\n<\/code><\/pre>\n<h4>Veri Seti Analizi<\/h4>\n<p>Kategorik de\u011fi\u015fkenlerin da\u011f\u0131l\u0131m\u0131n\u0131 anlamak i\u00e7in veri biliminde s\u0131k\u00e7a kullan\u0131l\u0131r.<\/p>\n<pre><code>\nveri_seti = ['erkek', 'kad\u0131n', 'erkek', 'erkek', 'kad\u0131n', 'di\u011fer']\ncinsiyet_dagilimi = Counter(veri_seti)\nprint(cinsiyet_dagilimi)\n<h2>\u00c7\u0131kt\u0131: Counter({'erkek': 3, 'kad\u0131n': 2, 'di\u011fer': 1})<\/h2>\n<\/code><\/pre>\n<h4>Log Analizi<\/h4>\n<p>Sunucu loglar\u0131ndaki en s\u0131k g\u00f6r\u00fclen hata kodlar\u0131n\u0131, IP adreslerini veya kullan\u0131c\u0131 eylemlerini bulmak i\u00e7in kullan\u0131labilir.<\/p>\n<pre><code>\nlog_satirlari = [\n    \"192.168.1.1 - GET \/index.html 200\",\n    \"10.0.0.5 - POST \/api\/data 500\",\n    \"192.168.1.1 - GET \/style.css 200\",\n    \"172.16.0.10 - GET \/images\/logo.png 200\",\n    \"10.0.0.5 - GET \/profile 404\",\n    \"192.168.1.1 - POST \/login 200\",\n    \"10.0.0.5 - POST \/api\/data 500\"\n]\n\nhata_kodlari = []\nfor satir in log_satirlari:\n    parcalar = satir.split()\n    status_code = parcalar[-1]\n    if status_code.startswith('4') or status_code.startswith('5'):\n        hata_kodlari.append(status_code)\n\nen_cok_hatalar = Counter(hata_kodlari)\nprint(en_cok_hatalar.most_common(1))\n<h2>\u00c7\u0131kt\u0131: [('500', 2)]<\/h2>\n<\/code><\/pre>\n<h4>Algoritma Problemleri<\/h4>\n<p>Anagram kontrol\u00fc gibi frekans tabanl\u0131 bir\u00e7ok algoritma probleminde <code>Counter<\/code> h\u0131zl\u0131 ve temiz bir \u00e7\u00f6z\u00fcm sunar.<\/p>\n<pre><code>\ndef are_anagrams(word1, word2):\n    return Counter(word1) == Counter(word2)\n\nprint(are_anagrams(\"listen\", \"silent\")) # \u00c7\u0131kt\u0131: True\nprint(are_anagrams(\"hello\", \"world\"))  # \u00c7\u0131kt\u0131: False\n<\/code><\/pre>\n<h4>Performans \u0130zleme<\/h4>\n<p>Belirli olaylar\u0131n veya fonksiyon \u00e7a\u011fr\u0131lar\u0131n\u0131n say\u0131s\u0131n\u0131 takip etmek i\u00e7in kullan\u0131labilir.<\/p>\n<pre><code>\nolay_kayitlari = []\n<h2>... Bir\u00e7ok olay meydana gelir ...<\/h2>\nolay_kayitlari.append('login_success')\nolay_kayitlari.append('login_fail')\nolay_kayitlari.append('page_view')\nolay_kayitlari.append('login_success')\n<h2>...<\/h2>\n\nolay_sayilari = Counter(olay_kayitlari)\nprint(olay_sayilari)\n<h2>\u00c7\u0131kt\u0131: Counter({'login_success': 2, 'login_fail': 1, 'page_view': 1})<\/h2>\n<\/code><\/pre>\n<h3>S\u00f6zl\u00fckten Farklar\u0131 ve Avantajlar\u0131<\/h3>\n<p><code>Counter<\/code> bir <code>dict<\/code> alt s\u0131n\u0131f\u0131 olmas\u0131na ra\u011fmen, onu standart bir s\u00f6zl\u00fckten ay\u0131ran ve say\u0131m i\u015flemleri i\u00e7in daha uygun k\u0131lan \u00f6nemli farkl\u0131l\u0131klar\u0131 ve avantajlar\u0131 vard\u0131r:<\/p>\n<p>1.  <strong>Olmayan Anahtarlar \u0130\u00e7in 0 De\u011feri:<\/strong> Standart bir s\u00f6zl\u00fckte, var olmayan bir anahtara eri\u015fmeye \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131zda <code>KeyError<\/code> al\u0131rs\u0131n\u0131z. <code>Counter<\/code> ise bu durumda varsay\u0131lan olarak <code>0<\/code> d\u00f6nd\u00fcr\u00fcr. Bu, say\u0131m yaparken anahtar\u0131n varl\u0131\u011f\u0131n\u0131 kontrol etme ihtiyac\u0131n\u0131 ortadan kald\u0131r\u0131r ve kodu basitle\u015ftirir.<\/p>\n<pre><code>\n    d = {'a': 1}\n    # print(d['b']) # KeyError\n    c = Counter({'a': 1})\n    print(c['b']) # 0\n    <\/code><\/pre>\n<p>2.  <strong>\u00d6zel Metotlar:<\/strong> <code>most_common()<\/code>, <code>elements()<\/code>, <code>update()<\/code>, <code>subtract()<\/code> gibi \u00f6zel metotlar, say\u0131m tabanl\u0131 i\u015flemleri ger\u00e7ekle\u015ftirmek i\u00e7in \u00f6zel olarak tasarlanm\u0131\u015ft\u0131r ve standart bir s\u00f6zl\u00fckte bulunmazlar. Bu metotlar, manuel d\u00f6ng\u00fcler ve ko\u015fullu ifadeler yazma ihtiyac\u0131n\u0131 ortadan kald\u0131rarak kodun k\u0131sal\u0131\u011f\u0131n\u0131 ve okunabilirli\u011fini art\u0131r\u0131r.<br \/>\n3.  <strong>Matematiksel \u0130\u015flemler:<\/strong> <code>+<\/code>, <code>-<\/code>, <code>&<\/code>, <code>|<\/code> gibi operat\u00f6rlerle koleksiyonlar \u00fczerinde k\u00fcme benzeri aritmetik i\u015flemler yapabilme yetene\u011fi, <code>Counter<\/code>&#8216;a benzersiz bir g\u00fc\u00e7 katar. Bu, \u00f6zellikle iki farkl\u0131 veri setinin frekanslar\u0131n\u0131 kar\u015f\u0131la\u015ft\u0131rmak veya birle\u015ftirmek gerekti\u011finde \u00e7ok kullan\u0131\u015fl\u0131d\u0131r.<br \/>\n4.  <strong>K\u0131sa ve Okunabilir Kod:<\/strong> <code>Counter<\/code>&#8216;\u0131n sa\u011flad\u0131\u011f\u0131 kolayl\u0131klar sayesinde, say\u0131m i\u015flemleri i\u00e7in yaz\u0131lan kod \u00e7ok daha k\u0131sa ve anla\u015f\u0131l\u0131r hale gelir. \u00d6rne\u011fin, bir listedeki elemanlar\u0131n frekans\u0131n\u0131 bulmak i\u00e7in manuel bir d\u00f6ng\u00fc yerine tek bir <code>Counter()<\/code> \u00e7a\u011fr\u0131s\u0131 yeterlidir.<\/p>\n<h3>Performans M\u00fclahazalar\u0131<\/h3>\n<p><code>collections.Counter<\/code> C ile optimize edilmi\u015f bir Python mod\u00fcl\u00fc oldu\u011fu i\u00e7in, \u00e7o\u011fu durumda manuel olarak yaz\u0131lan Python d\u00f6ng\u00fclerinden ve s\u00f6zl\u00fck manip\u00fclasyonlar\u0131ndan daha h\u0131zl\u0131 \u00e7al\u0131\u015f\u0131r. \u00d6zellikle b\u00fcy\u00fck veri setleri veya s\u0131k\u00e7a tekrarlanan say\u0131m i\u015flemleri i\u00e7in <code>Counter<\/code> kullanmak, performans a\u00e7\u0131s\u0131ndan \u00f6nemli avantajlar sa\u011flayabilir.<\/p>\n<p>Ancak, <code>Counter<\/code>&#8216;\u0131n da bir s\u00f6zl\u00fck gibi hash tabanl\u0131 bir yap\u0131 oldu\u011funu unutmamak \u00f6nemlidir. Bu, \u00e7ok say\u0131da benzersiz \u00f6\u011fe i\u00e7eren bir koleksiyonla \u00e7al\u0131\u015f\u0131rken bellek kullan\u0131m\u0131n\u0131n artabilece\u011fi anlam\u0131na gelir. Her benzersiz \u00f6\u011fe i\u00e7in bir anahtar ve bir de\u011fer saklanmas\u0131 gerekir. \u00c7o\u011fu durumda, bu bir sorun te\u015fkil etmez, ancak ekstrem senaryolarda bu durum g\u00f6z \u00f6n\u00fcnde bulundurulmal\u0131d\u0131r.<\/p>\n<h3>S\u0131n\u0131rlamalar ve Dikkat Edilmesi Gerekenler<\/h3>\n<p><code>Counter<\/code> son derece kullan\u0131\u015fl\u0131 olsa da, baz\u0131 s\u0131n\u0131rlamalar\u0131 ve dikkat edilmesi gereken noktalar\u0131 vard\u0131r:<\/p>\n<p>1.  <strong>Negatif Say\u0131mlar:<\/strong> <code>subtract()<\/code> metodu kullan\u0131ld\u0131\u011f\u0131nda, \u00f6\u011felerin say\u0131mlar\u0131 negatif de\u011ferler alabilir. Bu, baz\u0131 uygulamalarda beklenmedik sonu\u00e7lara yol a\u00e7abilir. \u00d6rne\u011fin, bir stok say\u0131m\u0131nda negatif de\u011ferler mant\u0131kl\u0131 olmayabilir. Bu durumda, <code>+c<\/code> operat\u00f6r\u00fcn\u00fc kullanarak negatif ve s\u0131f\u0131r say\u0131mlar\u0131 filtreleyebilirsiniz.<br \/>\n2.  <strong>S\u0131ralama:<\/strong> <code>Counter<\/code> temel olarak bir s\u00f6zl\u00fck oldu\u011fu i\u00e7in, Python 3.7 \u00f6ncesi s\u00fcr\u00fcmlerde \u00f6\u011felerin eklenme s\u0131ras\u0131n\u0131 garanti etmezdi. Python 3.7 ve sonraki s\u00fcr\u00fcmlerde, standart s\u00f6zl\u00fckler gibi <code>Counter<\/code> da \u00f6\u011felerin eklenme s\u0131ras\u0131n\u0131 korur. Ancak <code>most_common()<\/code> gibi metotlar, say\u0131m de\u011ferlerine g\u00f6re s\u0131ral\u0131 bir \u00e7\u0131kt\u0131 sa\u011flar. Genel olarak, <code>Counter<\/code>&#8216;\u0131n i\u00e7sel s\u0131ralamas\u0131na g\u00fcvenmek yerine, <code>most_common()<\/code> gibi metotlar\u0131 kullanarak istedi\u011finiz s\u0131ralamay\u0131 elde etmeniz \u00f6nerilir.<br \/>\n3.  <strong>Hash&#8217;lenebilir \u00d6\u011feler:<\/strong> <code>Counter<\/code> yaln\u0131zca hash&#8217;lenebilir \u00f6\u011feleri sayabilir. Listeler veya s\u00f6zl\u00fckler gibi de\u011fi\u015ftirilebilir (mutable) nesneler do\u011frudan anahtar olarak kullan\u0131lamaz. Ancak demetler (tuple) gibi de\u011fi\u015ftirilemez (immutable) koleksiyonlar say\u0131labilir.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Python&#8217;\u0131n <code>collections.Counter<\/code> s\u0131n\u0131f\u0131, koleksiyonlardaki \u00f6\u011felerin frekans\u0131n\u0131 sayma i\u015flemini basitle\u015ftiren, h\u0131zland\u0131ran ve okunabilir hale getiren g\u00fc\u00e7l\u00fc bir ara\u00e7t\u0131r. S\u00f6zl\u00fck benzeri davran\u0131\u015f\u0131yla birlikte <code>most_common()<\/code>, <code>update()<\/code>, <code>subtract()<\/code> gibi \u00f6zel metotlar\u0131 ve matematiksel i\u015flem yetenekleri sayesinde, kelime frekans\u0131 analizinden log analizine, veri biliminden algoritma problemlerine kadar geni\u015f bir yelpazede pratik uygulamalar bulur.<\/p>\n<p>Geleneksel s\u00f6zl\u00fck tabanl\u0131 manuel say\u0131m y\u00f6ntemlerine k\u0131yasla sundu\u011fu kolayl\u0131klar ve performans avantajlar\u0131, <code>Counter<\/code>&#8216;\u0131 her Python geli\u015ftiricisinin ara\u00e7 kutusunda bulunmas\u0131 gereken vazge\u00e7ilmez bir bile\u015fen haline getirir. Bu makale, <code>Counter<\/code>&#8216;\u0131n temelden ileri seviyeye kadar t\u00fcm y\u00f6nlerini ele alarak, bu g\u00fc\u00e7l\u00fc veri yap\u0131s\u0131n\u0131 Python projelerinizde etkin bir \u015fekilde kullanman\u0131z i\u00e7in gerekli bilgileri sa\u011flamay\u0131 ama\u00e7lam\u0131\u015ft\u0131r.<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Python Counter: Koleksiyonlardaki Nesnelerin Say\u0131m\u0131n\u0131 Kolayla\u015ft\u0131rma\nPython, veri yap\u0131lar\u0131 ve algoritmalar\u0131 kolayla\u015ft\u0131ran g\u00fc\u00e7l\u00fc ve esnek","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1403],"tags":[],"class_list":{"0":"post-39057","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-python","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Python Counter: Koleksiyonlardaki Nesnelerin Say\u0131m\u0131n\u0131 Kolayla\u015ft\u0131rma - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Python Counter: Koleksiyonlardaki Nesnelerin Say\u0131m\u0131n\u0131 Kolayla\u015ft\u0131rma\" \/>\n<meta property=\"og:description\" content=\"Python Counter: Koleksiyonlardaki Nesnelerin Say\u0131m\u0131n\u0131 Kolayla\u015ft\u0131rma Python, veri yap\u0131lar\u0131 ve algoritmalar\u0131 kolayla\u015ft\u0131ran g\u00fc\u00e7l\u00fc ve esnek\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-02-13T10:40:38+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"14 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Python Counter: Koleksiyonlardaki Nesnelerin Say\u0131m\u0131n\u0131 Kolayla\u015ft\u0131rma\",\"datePublished\":\"2026-02-13T10:40:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/\"},\"wordCount\":1836,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Python\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/\",\"name\":\"Python Counter: Koleksiyonlardaki Nesnelerin Say\u0131m\u0131n\u0131 Kolayla\u015ft\u0131rma - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-02-13T10:40:38+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Python Counter: Koleksiyonlardaki Nesnelerin Say\u0131m\u0131n\u0131 Kolayla\u015ft\u0131rma\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Python Counter: Koleksiyonlardaki Nesnelerin Say\u0131m\u0131n\u0131 Kolayla\u015ft\u0131rma - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/","og_locale":"tr_TR","og_type":"article","og_title":"Python Counter: Koleksiyonlardaki Nesnelerin Say\u0131m\u0131n\u0131 Kolayla\u015ft\u0131rma","og_description":"Python Counter: Koleksiyonlardaki Nesnelerin Say\u0131m\u0131n\u0131 Kolayla\u015ft\u0131rma Python, veri yap\u0131lar\u0131 ve algoritmalar\u0131 kolayla\u015ft\u0131ran g\u00fc\u00e7l\u00fc ve esnek","og_url":"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-02-13T10:40:38+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"14 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Python Counter: Koleksiyonlardaki Nesnelerin Say\u0131m\u0131n\u0131 Kolayla\u015ft\u0131rma","datePublished":"2026-02-13T10:40:38+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/"},"wordCount":1836,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Python"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/","url":"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/","name":"Python Counter: Koleksiyonlardaki Nesnelerin Say\u0131m\u0131n\u0131 Kolayla\u015ft\u0131rma - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-02-13T10:40:38+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/python-counter-koleksiyonlardaki-nesnelerin-sayimini-kolaylastirma\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Python Counter: Koleksiyonlardaki Nesnelerin Say\u0131m\u0131n\u0131 Kolayla\u015ft\u0131rma"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/39057","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=39057"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/39057\/revisions"}],"predecessor-version":[{"id":39058,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/39057\/revisions\/39058"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=39057"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=39057"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=39057"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}