PythonTingkat: Lanjutan7 min
Custom Context Managers & Modul contextlib
Pelajari cara mengelola siklus hidup resource secara elegan menggunakan protokol __enter__ dan __exit__ atau decorator praktis @contextmanager dari pustaka contextlib.
Protokol Context Manager (__enter__ dan __exit__)
Pratinjau TerbukaPernyataan with memastikan pelepasan resource (koneksi basis data, lock thread, file) terjadi secara pasti meskipun eksepsi muncul di tengah eksekusi.
Contoh Kode Sintaks
import time
from contextlib import contextmanager
# Cara 1: Menggunakan decorator @contextmanager
@contextmanager
def pengukur_durasi(label):
mulai = time.perf_counter()
try:
yield
finally:
selesai = time.perf_counter()
print(f"[BENCHMARK] {label}: {(selesai - mulai) * 1000:.2f} ms")
# Penggunaan
with pengukur_durasi("Kalkulasi Pangkat"):
total = sum(i ** 2 for i in range(500000))Live Compiler Runner
Akses Kursus Wajib Login
Buka Akses Penuh Silabus & Praktikum
Masuk dengan akun GitHub, Google, atau Akses Cepat Developer untuk membuka seluruh materi mendalam, menjalankan compiler interaktif, mengerjakan kuis, dan menyimpan progres belajar Anda.
145+ Modul Lengkap•Tersimpan Otomatis•Sertifikat Kelulusan Resmi