Menggunakan context manager

Menulis Function di Python

Shayne Miel

Software Architect @ Duo Security

Apa itu context manager?

Context manager:

  • Menyiapkan konteks
  • Menjalankan kode Anda
  • Menghapus konteks
Menulis Function di Python

Pesta dengan katering

ruangan kosong

Menulis Function di Python

Pesta dengan katering

ruangan dengan katering

Menulis Function di Python

Pesta dengan katering

ruangan pesta

Menulis Function di Python

Pesta dengan katering

ruangan dengan katering

Menulis Function di Python

Pesta dengan katering

ruangan kosong

Menulis Function di Python

Pesta berkatering sebagai konteks

Context manager:

  • Menyiapkan konteks
  • Menjalankan kode Anda
  • Menghapus konteks

Jasa katering:

  • Menata meja dengan makanan dan minuman
  • Membiarkan Anda dan teman berpesta
  • Bereskan dan angkat meja
Menulis Function di Python

Contoh dunia nyata

with open('my_file.txt') as my_file:
  text = my_file.read()
  length = len(text)

print('The file is {} characters long'.format(length))

open() melakukan tiga hal:

  • Menyiapkan konteks dengan membuka file
  • Membiarkan Anda menjalankan kode pada file tersebut
  • Menghapus konteks dengan menutup file
Menulis Function di Python

Menggunakan context manager

with
Menulis Function di Python

Menggunakan context manager

with <context-manager>()
Menulis Function di Python

Menggunakan context manager

with <context-manager>(<args>)
Menulis Function di Python

Menggunakan context manager

with <context-manager>(<args>):
Menulis Function di Python

Menggunakan context manager

with <context-manager>(<args>):
  # Jalankan kode Anda di sini
  # Kode ini berjalan "di dalam konteks"
Menulis Function di Python

Menggunakan context manager

with <context-manager>(<args>):
  # Jalankan kode Anda di sini
  # Kode ini berjalan "di dalam konteks"

# Kode ini berjalan setelah konteks dihapus
Menulis Function di Python

Menggunakan context manager

with <context-manager>(<args>) as <variable-name>:
  # Jalankan kode Anda di sini
  # Kode ini berjalan "di dalam konteks"

# Kode ini berjalan setelah konteks dihapus
with open('my_file.txt') as my_file:
  text = my_file.read()
  length = len(text)

print('The file is {} characters long'.format(length))
Menulis Function di Python

Ayo berlatih!

Menulis Function di Python

Preparing Video For Download...