CodeBlanks Logo Icon CodeBlanks

Özet - Collections

Counter, defaultdict ve deque'yi birleştirerek bir kelime frekans sayacı yazarsın.

Özet - Collections

Bu grupta Counter, defaultdict, OrderedDict, deque ve namedtuple araçlarını gördük. Beşi de collections modülünden gelir ve farklı veri görevlerini kolaylaştırır.

Counter sayar, defaultdict eksik anahtar için varsayılan üretir, OrderedDict sırayı korur ve taşır, deque iki uçtan hızlı ekleme yapar, namedtuple isimli alanlarla değişmez demet verir. Şimdi bunlardan birkaçını birleştiren bir örneği yazacağız.

Uygulama Birleşik özet örneği

from collections import Counter, defaultdict ile başla. text = "elma armut elma" satırını ekle. c = Counter(text.split()) ile kelime sayımı yap. d = defaultdict(int) ile bir defaultdict oluştur ve for word in text.split(): döngüsüyle d[word] += 1 yap. Sonra print(c["elma"]) ve print(d["elma"]) çağrılarını yap.

Başlangıç kodu

main.py
# Counter ve defaultdict ile kelime say

Örnek çözüm

main.py
# Counter ve defaultdict ile kelime say
from collections import Counter, defaultdict

text = "elma armut elma"
c = Counter(text.split())
d = defaultdict(int)
for word in text.split():
    d[word] += 1
print(c["elma"])
print(d["elma"])

Beklenen çıktı

2
2

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Hangi araç sayma için idealdir?

  • deque
  • Counter Doğru cevap
  • namedtuple
  • OrderedDict

Açıklama: Counter öğe saymak için tasarlanmıştır.

2 Aracı ve amacını eşleştir

Kavram Anlamı
Counter Sayma
defaultdict Varsayılan üretme
deque İki üçlü kuyruk
namedtuple İsimli demet

3 Counter içe aktarımı

Soru
from collections import Counter, ____

text = "elma armut elma"
c = Counter(text.split())
print(c["elma"])
Cevap
from collections import Counter, defaultdict

text = "elma armut elma"
c = Counter(text.split())
print(c["elma"])

Açıklama: defaultdict de collections modülündedir.

4 Özet örneği parçalarını eşleştir

Kavram Anlamı
Counter Hızlı sayma
defaultdict Döngüyle sayma
text.split() Kelimeleri ayırma
d[word] += 1 Sayı artırma

Orta seviye bölümündeki tüm dersler