"hasil" ialah kata kunci unik dalam Python yang membolehkan anda mencipta penjana, yang merupakan jenis khusus boleh lelar. Iterables mewakili jujukan nilai yang boleh anda ulangi, seperti senarai dan rentetan. Walau bagaimanapun, penjana berbeza daripada ini dengan tidak menyimpan semua nilai dalam ingatan. Sebaliknya, mereka menghasilkan nilai dengan pantas, satu demi satu.
Untuk memahami penjana, adalah berguna untuk bermula dengan iterables. Iterables ialah objek yang melaksanakan kaedah __iter__(), membolehkan anda mendapatkan semula objek iterator melalui fungsi iter(). Iterator melaksanakan kaedah __next__(), yang mengembalikan item seterusnya dalam jujukan dan menimbulkan pengecualian StopIteration apabila tiada lagi item yang tinggal.
Penjana ialah sejenis lelaran yang dibuat menggunakan kata kunci "hasil". Penjana adalah unik kerana ia menjeda pelaksanaan pada setiap pernyataan "hasil", membolehkan anda mendapatkan semula satu nilai pada satu masa. Apabila anda menggunakan penjana, ia menyambung semula pelaksanaan dari titik di mana ia dijeda, menjana nilai seterusnya. Proses ini berterusan sehingga penjana telah menghabiskan semua nilainya, pada ketika itu ia menimbulkan pengecualian StopIteration.
Untuk menggunakan penjana, anda mencipta fungsi penjana yang mengandungi satu atau lebih banyak kenyataan "hasil". Fungsi ini mengembalikan objek penjana, yang boleh diulang menggunakan gelung "untuk".
Berikut ialah contoh:
def generate_numbers(): for i in range(5): yield i
Dalam contoh ini, generate_numbers() ialah fungsi penjana yang berulang ke atas nombor dari 0 hingga 4 dan menghasilkan setiap nilai. Untuk menggunakan penjana ini, anda boleh mengulanginya menggunakan gelung "untuk":
for number in generate_numbers(): print(number)
Kod ini akan mencetak nombor dari 0 hingga 4.
Penjana menawarkan beberapa kelebihan berbanding iterabel tradisional:
"hasil" ialah kata kunci yang berkuasa dalam Python yang membolehkan anda mencipta penjana, jenis unik lelaran yang menjana nilai atas permintaan. Penjana menawarkan kelebihan seperti kecekapan memori, penilaian malas dan fleksibiliti, menjadikannya alat yang berharga dalam pelbagai senario pengaturcaraan.
Atas ialah kandungan terperinci Apakah Yang Dilakukan Kata Kunci `hasil` Python dan Bagaimana Penjana Digunakan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!