Hasil Python

Python Yield



Yield adalah kata kunci bawaan Python yang mengembalikan nilai dari suatu fungsi. Eksekusi fungsi tidak dihentikan. Sebaliknya, ia mengembalikan nilai ke pemanggil dan mempertahankan status eksekusi fungsi. Eksekusi fungsi dilanjutkan dari pernyataan hasil terakhir. Hasil memungkinkan kita untuk menghasilkan urutan nilai daripada satu nilai. Ini digunakan di dalam badan fungsi. Fungsi yang berisi pernyataan hasil dikenal sebagai fungsi generator.







Ada beberapa keuntungan untuk menghasilkan kata kunci. Misalnya, ia mengontrol alokasi memori dan menyimpan status variabel lokal. Namun, itu meningkatkan kompleksitas kode.



Artikel ini menjelaskan penggunaan kata kunci hasil dengan contoh.



Sintaks Hasil

Sintaks hasil sederhana dan mudah. Hasil dimulai dengan kata kunci dan sintaks hasil sebagai berikut:





menghasilkannilai

Contoh

Sekarang, mari kita lihat contoh untuk memahami penggunaan dan cara kerja pernyataan hasil. Secara tradisional, kata kunci kembali mengakhiri eksekusi program dan mengembalikan nilai di akhir, sementara hasil mengembalikan urutan nilai. Itu tidak menyimpan nilai dalam memori dan mengembalikan nilai ke pemanggil saat run time. Dalam contoh di bawah ini, fungsi generator didefinisikan untuk menentukan tahun kabisat. Lompatan adalah tahun ketika habis dibagi empat menghasilkan nol sebagai sisa. Kata kunci hasil mengembalikan nilai tahun kabisat ke pemanggil. Karena akan mendapatkan nilai tahun kabisat, ia akan menjeda eksekusi program, mengembalikan nilainya, dan kemudian melanjutkan eksekusi dari tempat ia dihentikan.

#deklarasi generator untuk menentukan tahun kabisat
deflompatan(daftarku):
untukSayadi dalamdaftarku:
jika(Saya%4==0):
#menggunakan hasil
menghasilkanSaya
#menyatakan daftar tahun
daftar_tahun=[2010,2011,2012,2016,2020,2024]
mencetak('Mencetak nilai tahun kabisat')
untukxdi dalamlompatan(daftar_tahun):
mencetak(x)

Keluaran



Output menunjukkan rangkaian tahun kabisat.

Mari kita lihat contoh lain di mana fungsi generator menghasilkan berbagai angka dan string.

#mendeklarasikan fungsi generator
deffungsiku():
menghasilkan 'Tanda'
menghasilkan 'Yohanes'
menghasilkan 'Taylor'
menghasilkan 'Ivan'
menghasilkan 10
menghasilkan dua puluh
menghasilkan 30
menghasilkan 40
menghasilkan lima puluh
#memanggil dan mengulangi melalui fungsi generator
untukSayadi dalamfungsiku():
#mencetak nilai
mencetak(Saya)

Keluaran

Mari kita implementasikan fungsi generator untuk menghitung dan mencetak nilai pangkat tiga dari barisan angka. Kami menghasilkan nilai kubus dari 1 hingga 30.

#mendeklarasikan fungsi generator untuk menghitung nilai kubus
defcalcube():
jam=1
#perulangan while tak terbatas
ketika benar:
#menghitung kubus
menghasilkanval * val * val
#menambah nilai sebesar 1
jam=val +1
mencetak('Nilai kubus adalah:')
#memanggil fungsi generator
untukSayadi dalamcalcube():
jikaSaya>30:
merusak
mencetak(Saya)

Keluaran

Output menunjukkan nilai kubus kurang dari 30.

Kesimpulan

Yield adalah kata kunci bawaan Python yang tidak menghentikan eksekusi program dan menghasilkan serangkaian nilai. Dibandingkan dengan kata kunci kembali, kata kunci hasil menghasilkan beberapa nilai dan kembali ke pemanggil. Artikel ini menjelaskan Hasil Python dengan contoh.