Pengulang dan Boleh Diulang
Terokai protokol pengulang untuk mencipta tingkah laku lelaran tersuai.
Pengulang dan Boleh Diulang ialah pelajaran Python Academy percuma di CoddyKit. Ini ialah pelajaran 5 daripada 5. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Python Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Python Academy merangkumi sejumlah 5 pelajaran.
Pengenalan kepada Objek Lelaran dan Objek Boleh Lelaran
Objek lelar dan objek boleh lelar ialah konsep asas dalam Python yang membolehkan Anda bekerja dengan jujukan data. Kedua-duanya menjadi asas kepada gelung, pemahaman dan penjana.
Dalam pelajaran ini, Anda akan mempelajari cara objek lelar dan objek boleh lelar berfungsi serta cara mencipta objek lelar Anda sendiri.

Apakah Objek Boleh Lelaran?
Objek boleh lelar ialah apa-apa objek dalam Python yang boleh dilalui menggunakan gelung for. Contohnya termasuk senarai, tupel, himpunan dan kamus.
# Example of an iterable
my_list = [1, 2, 3]
for item in my_list:
print(item) # Outputs: 1, 2, 3Apakah Objek Lelaran?
Objek lelar ialah objek yang mewakili aliran data. Objek ini melaksanakan kaedah __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: 3Perbezaan antara Objek Boleh Lelaran dengan Objek Lelaran
Objek boleh lelar boleh dilalui, contohnya senarai, manakala objek lelar menghasilkan satu item pada satu-satu masa menggunakan kaedah next(). Objek boleh lelar menjadi objek lelar apabila dihantar kepada fungsi iter().
Mencipta Objek Lelaran Tersuai
Anda boleh mencipta objek lelar tersuai dengan mentakrifkan kelas yang mempunyai kaedah __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, 5Menggunakan Fungsi <code>iter()</code>
Fungsi iter() mengembalikan objek lelar daripada objek boleh lelar:
# Using iter() on a list
my_list = [1, 2, 3]
iterator = iter(my_list)
print(next(iterator)) # Outputs: 1Mengendalikan <code>StopIteration</code>
Apabila objek lelar telah habis digunakan, objek tersebut menimbulkan pengecualian StopIteration. Beginilah cara Python menandakan penghujung sesuatu jujukan.
# Handling StopIteration
my_list = [1, 2, 3]
iterator = iter(my_list)
while True:
try:
print(next(iterator))
except StopIteration:
breakObjek Lelaran berbanding Penjana
Penjana ialah cara yang lebih mudah untuk mencipta objek lelar. Penjana melaksanakan kaedah __iter__() dan __next__() secara automatik.
# 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, 3Kesilapan Lazim dengan Objek Lelaran
Berikut ialah beberapa kesilapan yang perlu dielakkan:
- Terlupa melaksanakan
__iter__()dan__next__()dalam objek lelar tersuai. - Tidak mengendalikan pengecualian
StopIterationdengan betul. - Keliru antara objek lelar dengan objek boleh lelar.
Apakah yang Telah Kita Pelajari?
Dalam pelajaran ini, Anda telah mempelajari:
- Perbezaan antara objek boleh lelar dengan objek lelar.
- Cara menggunakan
__iter__()dan__next__()untuk mencipta objek lelar tersuai. - Cara menggunakan fungsi
iter()dan mengendalikan pengecualianStopIteration. - Cara penjana memudahkan penciptaan objek lelar.
Syabas! Mari kita beralih ke topik seterusnya.

Pelajari Python dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 76
- Pelajaran
- 320
Soalan Lazim
Adakah pelajaran “Pengulang dan Boleh Diulang” percuma?
Ya — teks penuh “Pengulang dan Boleh Diulang” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Python Academy, tingkat taraf kepada CoddyKit PRO. Kursus Python Academy merangkumi sejumlah 5 pelajaran.
Apakah yang akan saya pelajari dalam “Pengulang dan Boleh Diulang”?
Terokai protokol pengulang untuk mencipta tingkah laku lelaran tersuai. Anda berlatih Python Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Python Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Python Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 5 daripada 5.
Berapa lamakah pelajaran “Pengulang dan Boleh Diulang” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Python Academy ini?
Ya. Setiap pelajaran Python Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Penghias
- Penjana
- Pengurus Konteks (Pernyataan with)
- Pemahaman (Senarai, Set dan Kamus)
- Pengulang dan Boleh Diulang