0Pricing
Python Academy · Pelajaran

Iterator dan Iterable

Pelajari protokol iterator untuk membuat perilaku iterasi khusus.

Iterator dan Iterable adalah pelajaran Python Academy gratis di CoddyKit. Ini adalah pelajaran 5 dari 5. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Python Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Python Academy mencakup 5 pelajaran total.

Pengenalan Pengiterasi dan Objek yang Dapat Diiterasi

Pengenalan Pengiterasi dan Objek yang Dapat Diiterasi

Pengiterasi dan objek yang dapat diiterasi adalah konsep dasar di Python yang memungkinkan Anda bekerja dengan urutan data. Keduanya menjadi dasar perulangan, ekspresi pembentuk koleksi, dan pembangkit.

Dalam pelajaran ini, Anda akan mempelajari cara kerja pengiterasi dan objek yang dapat diiterasi serta cara membuat pengiterasi sendiri.

Iterator dan Iterable — ilustrasi 1

Apa Itu Objek yang Dapat Diiterasi?

Apa Itu Objek yang Dapat Diiterasi?

Objek yang dapat diiterasi adalah objek apa pun di Python yang dapat ditelusuri menggunakan perulangan for. Contohnya meliputi daftar, tupel, himpunan, dan kamus.

# Example of an iterable
my_list = [1, 2, 3]
for item in my_list:
    print(item)  # Outputs: 1, 2, 3

Apa Itu Pengiterasi?

Apa Itu Pengiterasi?

Pengiterasi adalah objek yang merepresentasikan aliran data. Pengiterasi menerapkan metode __iter__() dan __next__().

# Example of an iterator
my_list = [1, 2, 3]
iterator = iter(my_list)
print(next(iterator))  # Outputs: 1
print(next(iterator))  # Outputs: 2
print(next(iterator))  # Outputs: 3

Perbedaan antara Objek yang Dapat Diiterasi dan Pengiterasi

Perbedaan antara Objek yang Dapat Diiterasi dan Pengiterasi

Objek yang dapat diiterasi dapat ditelusuri dengan perulangan, misalnya daftar, sedangkan pengiterasi menghasilkan satu elemen setiap kali menggunakan metode next(). Objek yang dapat diiterasi menjadi pengiterasi ketika diteruskan ke fungsi iter().

Membuat Pengiterasi Khusus

Membuat Pengiterasi Khusus

Anda dapat membuat pengiterasi khusus dengan mendefinisikan kelas yang memiliki metode __iter__() dan __next__():

# Custom iterator example
class Counter:
    def __init__(self, start, end):
        self.current = start
        self.end = end

    def __iter__(self):
        return self

    def __next__(self):
        if self.current > self.end:
            raise StopIteration
        self.current += 1
        return self.current - 1

counter = Counter(1, 5)
for number in counter:
    print(number)  # Outputs: 1, 2, 3, 4, 5

Menggunakan Fungsi <code>iter()</code>

Menggunakan Fungsi iter()

Fungsi iter() mengembalikan objek pengiterasi dari objek yang dapat diiterasi:

# Using iter() on a list
my_list = [1, 2, 3]
iterator = iter(my_list)
print(next(iterator))  # Outputs: 1

Menangani StopIteration

Menangani StopIteration

Ketika pengiterasi telah habis, pengiterasi memunculkan pengecualian StopIteration. Dengan cara inilah Python menandai akhir suatu urutan.

# Handling StopIteration
my_list = [1, 2, 3]
iterator = iter(my_list)

while True:
    try:
        print(next(iterator))
    except StopIteration:
        break

Pengiterasi vs. Pembangkit

Pengiterasi vs. Pembangkit

Pembangkit adalah cara yang lebih sederhana untuk membuat pengiterasi. Pembangkit secara otomatis menerapkan metode __iter__() dan __next__().

# Example of a generator as an iterator
def my_generator():
    yield 1
    yield 2
    yield 3

for value in my_generator():
    print(value)  # Outputs: 1, 2, 3

Kesalahan Umum dalam Penggunaan Pengiterasi

Kesalahan Umum dalam Penggunaan Pengiterasi

Berikut beberapa kesalahan yang perlu dihindari:

  • Lupa menerapkan __iter__() dan __next__() dalam pengiterasi khusus.
  • Tidak menangani pengecualian StopIteration dengan benar.
  • Keliru membedakan pengiterasi dan objek yang dapat diiterasi.

Apa yang Telah Kita Pelajari?

Apa yang Telah Kita Pelajari?

Dalam pelajaran ini, Anda telah mempelajari:

  • Perbedaan antara objek yang dapat diiterasi dan pengiterasi.
  • Cara menggunakan __iter__() dan __next__() untuk membuat pengiterasi khusus.
  • Cara menggunakan fungsi iter() dan menangani pengecualian StopIteration.
  • Cara pembangkit menyederhanakan pembuatan pengiterasi.

Bagus sekali! Mari kita beralih ke topik berikutnya.

Iterator dan Iterable — ilustrasi 11

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Iterator dan Iterable” gratis?

Ya — teks lengkap “Iterator dan Iterable” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Python Academy, upgrade ke CoddyKit PRO. Kursus Python Academy mencakup 5 pelajaran total.

Apa yang akan aku pelajari di “Iterator dan Iterable”?

Pelajari protokol iterator untuk membuat perilaku iterasi khusus. Kamu berlatih Python Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Python Academy?

Tidak diperlukan pengalaman sebelumnya. Python Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 5 dari 5.

Berapa lama pelajaran “Iterator dan Iterable” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Python Academy ini?

Ya. Setiap pelajaran Python Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Dekorator
  2. Generator
  3. Pengelola Konteks (Pernyataan with)
  4. Pemahaman (Daftar, Himpunan, dan Kamus)
  5. Iterator dan Iterable
← Kembali ke Python Academy