Perbezaan Antara Perolehan Python dan Pulangan Python

Kenyataan hasil digunakan untuk menentukan penjana dalam Python. Jadi, sebelum kita mencapai apa sebenarnya hasil, kita perlu memahami konsep penjana terlebih dahulu. Penjana mempunyai peranan yang penting dalam Python dan jika anda dalam pengaturcaraan Python, kemungkinan besar anda telah bekerja dengan penjana Python. Penjana digunakan untuk membuat iterator dalam Python, tetapi dengan pendekatan yang berbeza.

Penjana Python adalah fungsi yang menghasilkan turutan hasil dan boleh dijeda dan disambung semula secara dinamik. Penjana pertama kali ditambah sebagai ciri pilihan dalam Python 2.2 dan dibuat standard dalam Python 2.3. Walaupun, mereka cukup kuat, fungsi penjana telah meningkat dengan ketara dalam Python 2.5.

Apabila penjana ditambah kembali dalam Python 2.2, ia memperkenalkan kata kunci "hasil" baru untuk keserasian ke belakang, yang mana kita perlu mengimport penjana dari modul _future_ untuk menggunakannya. Ini telah diubah dalam versi Python 2.3 apabila penjana menjadi standard dan ia tidak lagi diperlukan.

Kenyataan hasil menangguhkan pelaksanaan fungsi dan mengirimkan nilai kembali kepada pemanggil, sambil menyimpan keadaan dan kemudian melanjutkan artinya seluruh penjana itu sendiri masih dapat diteruskan setelah nilai pulangan diperoleh. Penyataan kembali menamatkan pelaksanaan fungsi tersebut dan menghantar nilai kembali kepada pemanggil. Tanpa itu, fungsi anda tiada apa-apa. Mari kita lihat pada bila menggunakan hasil dan bila menggunakan pulangan dalam Python untuk lebih memahami perbezaan antara kedua-dua.

Apa itu Hasil Python?

Kenyataan hasil digunakan dalam penjana Python untuk menggantikan pemulangan fungsi untuk menghantar nilai kembali kepada pemanggilnya tanpa memusnahkan pembolehubah setempat. Untuk lebih memahami peranan apa pernyataan hasil dalam pemrograman Python, anda perlu memahami apa penjana.

Fungsi penjana dihasilkan berdasarkan definisi seperti fungsi tetap tetapi mengandungi pernyataan "hasil". Ini bermula dengan kata kunci "hasil" yang menentukan objek penjana untuk dikembalikan kepada pemanggil. Penjana adalah fungsi khas dalam Python yang mengembalikan objek penjana kepada pemanggil daripada nilai data. Kata kunci hasil mempunyai keupayaan unik menghentikan pelaksanaan fungsi, menyimpan keadaan, dan kemudian melanjutkan.

Apa itu Pulangan Python?

Kenyataan pulangan, tidak seperti penyata hasil, keluar daripada fungsi, menyerahkan nilai kepada pemanggilnya. Fungsi mengembalikan nilai kepada pemanggil mereka dan mereka yang lebih bersifat prosedur tidak secara eksplisit mengembalikan apa-apa. Walaupun fungsi boleh mempunyai pernyataan pulangan berganda, hanya satu daripada mereka yang boleh dipanggil untuk sebarang penyerahan fungsi yang diberikan.

Lazimnya, kenyataan pulangan muncul di penghujung blok fungsi untuk mengembalikan hasil akhir melaksanakan semua kenyataan yang terkandung dalam fungsi itu. Walau bagaimanapun, ia juga mungkin muncul sebelum blok fungsi untuk menghentikan pelaksanaan semua kenyataan berikutnya dalam blok itu. Ini akan menyambung semula pelaksanaan program tersebut pada pemanggil. Apabila tiada nilai ditentukan, jenis objek pemulangan yang sama dalam Python adalah "Tiada".

Perbezaan antara Hasil dan Pulangan Python

  1. Asas-asas yang berkaitan dengan Python yield and Return

    • Kenyataan hasil digunakan dalam penjana Python untuk menggantikan pemulangan fungsi untuk menghantar nilai kembali kepada pemanggilnya tanpa memusnahkan pembolehubah setempat. Penjana adalah fungsi khas dalam Python yang mengembalikan objek penjana kepada pemanggil daripada nilai data.
    • Kenyataan pulangan, tidak seperti penyata hasil, keluar daripada fungsi, menyerahkan nilai kepada pemanggilnya. Lazimnya, kenyataan pulangan muncul di penghujung blok fungsi untuk mengembalikan hasil akhir melaksanakan semua kenyataan yang terkandung dalam fungsi itu. Semua fungsi mengembalikan nilai dan jika tiada nilai yang ditentukan, ia akan mengembalikan "Tiada".
  1. Generator vs. Fungsi dalam Python yield and Return

    • Penyataan hasil secara jelas digunakan dengan penjana Python. Syntactically, penjana adalah fungsi dengan pernyataan hasil. Walaupun fungsi boleh mempunyai pernyataan pulangan berganda, hanya satu daripada mereka yang boleh dipanggil untuk sebarang penyerahan fungsi yang diberikan.
    • Tidak seperti fungsi yang hanya pulih sekali, penjana boleh menghentikan pelaksanaan dan menghasilkan keputusan pertengahan. Setiap penjana didefinisikan sebagai fungsi, tetapi bukan kata kunci pulangan, kata kunci hasil digunakan di dalam blok fungsi untuk menunjukkan bahawa nilai pulangan hanya bersifat sementara dan penjana keseluruhan boleh dilanjutkan walaupun nilai pulangan diperoleh.
  1. Pelaksanaan Hasil dan Pulangan Python

    • Kenyataan pulangan menamatkan pelaksanaan fungsi dan menghantar kembali nilai kepada pemanggilnya. Fungsi mengembalikan nilai kepada pemanggil mereka dan mereka yang lebih bersifat prosedur tidak secara eksplisit mengembalikan apa-apa. Apa yang pada dasarnya adalah mengambil keluar dari fungsi dan memusnahkan semua nilai tempatan dalam.
    • Pernyataan hasil, sebaliknya, menggantikan nilai pulangan fungsi untuk menggantung pelaksanaannya dan menghantar nilai kembali kepada pemanggilnya tanpa memusnahkan pembolehubah setempat. Bagaimanapun, tidak seperti fungsi pemulangan, hasil menyambung semula pelaksanaan fungsi dari mana ia ditinggalkan.

Hasil Python vs. Return: Carta Perbandingan

Ringkasan Hasil dan Pulangan Python

Secara sintaktik, hasil adalah kata kunci yang boleh digunakan seperti kata kunci pulangan, kecuali kenyataan pulangan menamatkan pelaksanaan fungsi anda dan menghantar kembali nilai kepada pemanggilnya. Fungsi pernyataan pulangan adalah mengambil input dan mengembalikan sesuatu kepada pemanggil. Tidak seperti penyata, penyataan hasil secara jelas digunakan untuk menentukan penjana, menggantikan nilai pulangan fungsi untuk menggantung pelaksanaannya yang menjaga pembolehubah setempat utuh, sedangkan kenyataan pulangan memusnahkan semua pembolehubah setempat dalam.