CodeBlanks Logo Icon CodeBlanks

Özet - Performans

timeit, cProfile ve __slots__'u birleştirerek optimize edilmiş bir işleyici yazarsın.

Özet: Performans

Bu grupta Python performans araçlarını öğrendin. timeit ile ölçüm, cProfile ile profil çıkarma yaptın.

sys.getsizeof ile bellek ölçtün. __slots__ ile bellek tasarrufu sağladın. numpy ile vektörizasyon uyguladın. Şimdi bunları birleştirip optimize edilmiş bir işleyici yazacaksın: __slots__ ile bellek dostu bir sınıf ve numpy ile hızlı hesaplama bir arada.

Uygulama Optimize işleyici yaz

import numpy as np ile modülü içe aktar. Point sınıfı yaz; __slots__ = ['data'] tanımla. __init__(self, data) ile self.data = np.array(data) yap. squared yöntemi ekle; self.data ** 2 döndürsün. Point([1, 2, 3]) örneği oluştur ve .squared()'ı yazdır.

Başlangıç kodu

main.py
# Point sınıfı yaz: slots + numpy
# örnek oluştur ve yazdır

Örnek çözüm

main.py
import numpy as np

class Point:
    __slots__ = ["data"]
    def __init__(self, data):
        self.data = np.array(data)
    def squared(self):
        return self.data ** 2

p = Point([1, 2, 3])
print(p.squared())

Beklenen çıktı

[1 4 9]

Ne öğrendin?

Bu grupta Python performans optimizasyonunu öğrendin. timeit ile ölçüm, cProfile ile profil çıkarma yaptın. sys.getsizeof ile bellek ölçtün.

__slots__ ile bellek tasarrufu ve numpy ile vektörizasyon uyguladın. Özet derste bunları birleştirip optimize bir işleyici yazdın. Bu bilgi, büyük veri ve yüksek performans gerektiren uygulamalar için kritiktir.

Soru ve cevaplar

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

1 Hangi araç hangi iş?

  • timeit ile bellek ölçme
  • getsizeof ile vektörizasyon
  • cProfile ile süre profili Doğru cevap
  • numpy ile profil çıkarma

Açıklama: cProfile fonksiyon sürelerini profiller. Diğer eşleşmeler yanlış.

2 Tüm performans kavramlarını eşleştir

Kavram Anlamı
timeit Süre ölçer
cProfile Profil çıkarır
getsizeof Bellek ölçer
numpy Vektörize eder

3 Son boşluk

Soru
import numpy as ____
a = np.array([1, 2, 3])
Cevap
import numpy as np
a = np.array([1, 2, 3])

Açıklama: import numpy as np standart kısaltmadır.

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