CodeBlanks Logo Icon CodeBlanks

timeit

timeit ile benchmark ölçmeyi öğrenirsin.

timeit nedir?

timeit modülü, küçük kod parçalarının yürütme süresini ölçer. timeit.timeit(expr, number=N) ifadesi expr'i N kez çalıştırır ve toplam süreyi saniye olarak döndürür.

Bu, iki farklı çözümü karşılaştırmak için standart araçtır. Örneğin sum(range(100))'ün ne kadar sürdüğünü öğrenirsin. number argümanı tekrar sayısını belirler; küçük ifadeler için yüksek tutulur. Ölçüm sonucu donanım ve yüke bağlı olduğundan, sonuç değerini yazdırmak yerine karşılaştırma için kullanırsın.

number argümanı

number argümanı ölçümün kaç kez tekrar edileceğini belirler. Varsayılan değer 100000'dir; bu çok kısa ifadeler içindir.

Daha uzun ifadeler için number'ı düşürmek gerekir; yoksa ölçüm çok uzun sürer. Örneğin timeit.timeit("sum(range(100))", number=100) 100 tekrar yapar. Sonuç, toplam süredir; ortalama için sonuca number bölersin. Ölçüm doğruluğu için bilgisayarı boşta tutmak önemlidir; arka plan işleri sonucu etkileyebilir.

Uygulama timeit ile ölçüm yap

import timeit ile modülü içe aktar. timeit.timeit("sum(range(100))", number=100) çağrısını bir değişkene ata. Sonra print("ölçü alındı") yaz. Ölçüm sonucunu yazdırma; yalnızca sabit mesajı yaz.

Başlangıç kodu

main.py
# ölçüm yap ve sabit mesaj yaz

Örnek çözüm

main.py
import timeit

t = timeit.timeit("sum(range(100))", number=100)
print("ölçü alındı")

Beklenen çıktı

ölçü alındı

Soru ve cevaplar

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

1 timeit kavramlarını eşleştir

Kavram Anlamı
timeit Süre ölçer
number Tekrar sayısı
timeit.timeit Toplam süre
expr Ölçülen ifade

2 timeit.timeit ne döndürür?

main.py
import timeit
t = timeit.timeit('sum(range(10))', number=100)
  • Tekrar sayısını
  • Ortalama süreyi
  • Toplam süreyi saniye olarak Doğru cevap
  • Bir hata

Açıklama: timeit.timeit toplam süreyi saniye olarak döndürür.

3 timeit çağrısını tamamla

Soru
t = timeit.____("sum(range(100))", number=100)
Cevap
t = timeit.timeit("sum(range(100))", number=100)

Açıklama: timeit.timeit(expr, number=N) ölçüm yapar.

Uzman bölümündeki tüm dersler