Python Yield vs. Return

Python Yield Vs Return



Python adalah bahasa pengaturcaraan tujuan umum yang banyak digunakan sejak kebelakangan ini. Hasilnya adalah kata kunci Python terbina dalam yang digunakan untuk membuat fungsi penjana. Fungsinya menghasilkan serangkaian hasil. Ini menjeda pelaksanaan program, mengirim nilai hasil kembali kepada pemanggil, dan melanjutkan pelaksanaan dari hasil terakhir. Selain itu, fungsi hasil mengirimkan rangkaian hasil yang dihasilkan dalam bentuk objek penjana. Sebaliknya, pengembalian juga merupakan kata kunci terbina dalam Python yang menghentikan fungsi dan menghantar nilai kembali kepada pemanggil.

Artikel ini menggariskan perbezaan antara hasil dan pulangan dengan contoh.







Perbezaan antara Hasil dan Pulangan

Sebagai permulaan, terdapat banyak perbezaan yang menonjol antara hasil dan pulangan. Mari kita bincangkan dahulu perkara-perkara ini.



Kembali Hasil
Penyata pulangan hanya mengembalikan satu nilai kepada pemanggil. Pernyataan hasil dapat mengembalikan serangkaian hasil kepada pemanggil dalam bentuk objek penjana.
Pengembalian keluar dari fungsi, dan dalam keadaan gelung, ia melepaskan gelung. Ini adalah pernyataan terakhir yang diletakkan di dalam fungsi. Ia tidak menghapuskan pemboleh ubah tempatan fungsi. Ini menangguhkan pelaksanaan dan mengirim nilai kembali ke pemanggil, dan melanjutkan pelaksanaan program dari pernyataan hasil terakhir.
Secara logiknya, fungsi hanya boleh mempunyai pernyataan pengembalian. Mungkin terdapat lebih dari satu pernyataan hasil dalam fungsi.
Penyata pengembalian hanya boleh dijalankan sekali sahaja. Penyataan hasil boleh dijalankan berkali-kali.
Penyataan kembali diletakkan di dalam fungsi Python biasa. Pernyataan hasil menukar fungsi biasa menjadi fungsi penjana.

Contoh1: Pulangan berbanding Hasil

Sekarang, mari kita lihat perbezaan antara penyata pulangan dan hasil melalui contoh. Dalam contoh program yang diberikan di bawah ini, kami telah menggunakan beberapa pernyataan pengembalian. Anda dapat melihat bahawa pelaksanaan program akan berakhir setelah pernyataan pengembalian pertama, dan selebihnya kod tidak akan dilaksanakan.



#a program untuk menunjukkan cara penyata pengembalian

#menentukan pemboleh ubah nombor

bilangan1=10

#menentukan pemboleh ubah nombor

bilangan2=dua puluh

#membuat fungsi untuk melakukan operasi aritmetik

def mathOP():

#kira nilai jumlah

kembalibilangan1+bilangan2

#kira perbezaannya

kembalibilangan1-bilangan2

#kira nilai pendaraban

kembalibilangan1*bilangan2

#kira nilai pembahagian

kembalibilangan1/bilangan2

# memanggil fungsi

mencetak(mathOP())

Pengeluaran





Dalam output, dapat dilihat bahawa fungsi hanya mengembalikan nilai pertama, dan program dihentikan.



Untuk melakukan tugas yang serupa dengan pernyataan pulangan berganda, kita perlu membuat empat fungsi yang berbeza untuk setiap jenis operasi aritmetik.

#a program untuk menunjukkan cara penyata pengembalian

#menentukan pemboleh ubah nombor

bilangan1=10

#menentukan pemboleh ubah nombor

bilangan2=dua puluh

#membuat fungsi untuk melakukan operasi aritmetik

def sumOP():

#kira nilai jumlah

kembalibilangan1+bilangan2

def mengurangkan():

#kira perbezaannya

kembalibilangan1-bilangan2

pendaraban def():

#kira nilai pendaraban

kembalibilangan1*bilangan2

def bahagianOP():

#kira nilai pembahagian

kembalibilangan1/bilangan2

# memanggil fungsi jumlah

mencetak('Nilai keseluruhannya adalah:',sumop())

# memanggil fungsi penolakan

mencetak('Nilai perbezaannya adalah:',tolakOP())

# memanggil fungsi pendaraban

mencetak('Nilai pendaraban adalah:',pendarabanOP())

# memanggil fungsi pembahagian

mencetak('Nilai pembahagian adalah:',pembahagianOP())

Pengeluaran

Kita boleh melakukan operasi aritmetik pelbagai ini dalam fungsi penjana tunggal dengan pernyataan hasil yang banyak.

#a program untuk menunjukkan hasil penyataan hasil

#menentukan pemboleh ubah nombor

bilangan1=10

#menentukan pemboleh ubah nombor

bilangan2=dua puluh

#membuat fungsi untuk melakukan operasi aritmetik

def mathOP():

#kira nilai jumlah

hasilbilangan1+bilangan2

#kira perbezaannya

hasilbilangan1-bilangan2

#kira nilai pendaraban

hasilbilangan1*bilangan2

#kira nilai pembahagian

hasilbilangan1/bilangan2

# memanggil fungsi

mencetak('Mencetak nilai:')

#menggunakan gelung untuk mengakses nilai dari objek penjana

untuksaya dalam mathOP():

mencetak(i)

Pengeluaran

Contoh2: Pulangan berbanding Hasil

Mari lihat contoh penyata pulangan dan hasil yang lain. Dalam contoh yang diberikan, kami mempunyai senarai nombor yang diteruskan ke fungsi mod () sebagai argumen. Kami melakukan operasi modulus pada setiap bilangan senarai dan memeriksa angka-angka tersebut apabila dibahagi dengan 10 pulangan sifar sebagai nilai selebihnya.

Pertama, mari kita laksanakan contoh ini dalam skrip Python kami dengan penyataan kembali.

#menentukan senarai nombor

senarai saya=[10,dua puluh,25,30,35,40,lima puluh]

#menentukan fungsi untuk melakukan operasi modulus

mod def(senarai saya):

untuksaya di myList:

#menjalankan operasi modulus

sekiranya(i%10==0):

kembalii

mencetak(terhadap(senarai saya))

Pengeluaran

Penyataan pengembalian hanya mengembalikan nombor pertama kepada pemanggil dan menghentikan pelaksanaan fungsi.

Sekarang, mari kita laksanakan contoh yang sama dalam skrip Python kami dengan pernyataan hasil.

#menentukan senarai nombor

senarai saya=[10,dua puluh,25,30,35,40,lima puluh]

#menentukan fungsi untuk melakukan operasi modulus

mod def(senarai saya):

untuksaya di myList:

#menjalankan operasi modulus

sekiranya(i%10==0):

# penyata hasil

hasili

untuksaya dalam mod(senarai saya):

mencetak(i)

Pengeluaran

Kesimpulannya

Kesimpulannya, pulangan dan hasil adalah dua kata kunci atau pernyataan Python terbina dalam. Pernyataan kembali digunakan untuk mengembalikan nilai kepada pemanggil dari fungsi dan menghentikan pelaksanaan program, sementara pernyataan hasil menghasilkan objek penjana dan dapat mengembalikan nilai berganda kepada pemanggil tanpa menghentikan pelaksanaan program. Artikel ini menyenaraikan semua perbezaan yang ketara antara penyata pulangan dan hasil dengan contoh.