


Apakah perbezaan antara Hasil dan Pulangan dalam Python?
Dalam Python, takrifan generator dilakukan dengan bantuan pernyataan hasil. Jadi sebelum kita masuk ke butiran tentang apa sebenarnya hasil digunakan, adalah penting untuk memahami gambaran keseluruhan penjana. Jika anda baru menggunakan Python, ada kemungkinan besar anda pernah menggunakan penjana Python sebelum ini. Penjana memainkan peranan penting dalam Python. Dalam Python, iterator boleh dijana menggunakan penjana, tetapi prosesnya mengambil bentuk yang sedikit berbeza.
Penjana Python ialah fungsi yang boleh menjeda dan menyambung semula secara dinamik serta mencipta urutan hasil. Mereka juga boleh digunakan untuk menjana nombor rawak. Dalam Python 2.2, penjana pertama kali diperkenalkan sebagai ciri pilihan. Dalam Python 2.3, mereka dikuatkuasakan. Fungsi penjana telah banyak dipertingkatkan dalam Python 2.5, walaupun ia sudah mempunyai fungsi yang mencukupi.
Untuk mengekalkan keserasian ke belakang, penambahan penjana dalam Python 2.2 menghasilkan pengenalan kata kunci baharu dipanggil “hasil”. Untuk menggunakan penjana, kita perlu mengimportnya daripada modul _future_. Apabila penjana menjadi lalai dalam keluaran Python 2.3, ini telah diubah untuk mencerminkan fakta bahawa perubahan itu tidak lagi diperlukan.
Gunakan pernyataan hasil untuk menghentikan sementara pelaksanaan fungsi, yang kemudiannya mengembalikan nilai kepada pemanggil sambil menyimpan keadaan fungsi untuk pemulihan kemudian. Ini bermakna keseluruhan penjana masih boleh dimulakan semula selepas mendapat nilai pulangan. Pelaksanaan fungsi ditamatkan dengan pernyataan pulangan, yang juga mengembalikan nilai kepada orang yang memanggil fungsi tersebut. Jika tiada, fungsi anda tidak akan mengembalikan apa-apa.
Apakah Hasil Python?
Dalam penjana Python, pernyataan hasil menggantikan fungsi return untuk mengembalikan nilai kepada orang yang memanggil penjana tanpa memadam sebarang pembolehubah setempat. Untuk lebih memahami fungsi pelaksanaan pernyataan hasil dalam pengaturcaraan Python, anda perlu membiasakan diri dengan penjana terlebih dahulu.
Perbezaan antara fungsi generator dan fungsi normal ialah terdapat pernyataan "hasil" dalam definisi fungsi generator. Ia bermula dengan kata kunci "hasil", yang mengenal pasti objek penjana untuk dikembalikan kepada sesiapa yang memanggil fungsi ini.
Dalam Python, jenis fungsi tertentu yang dipanggil "penjana" tidak mengembalikan nilai data kepada orang yang memanggil fungsi itu, sebaliknya mengembalikan objek penjana yang lain. Dengan bantuan kata kunci hasil, anda boleh menghentikan sementara pelaksanaan fungsi, menyimpan keadaan dan menyambung semula fungsi itu kemudian.
Contoh
Lihat contoh di bawah -
# Use of yield def printresult(String): for i in String: if i == "p": yield i # Initializing string String = "Happy Birthday" ans = 0 print ("The number of 'p' in word is: ", end = "" ) String = String.strip() for j in printresult(String): ans = ans + 1 print (ans)
Output
The number of 'p' in word is: 2
Apakah Python Return?
Berbeza dengan penyataan hasil, penyataan return menyebabkan fungsi ditamatkan sambil menghantar nilai kembali ke fungsi yang memanggilnya. Fungsi yang lebih bersifat prosedural tidak mengembalikan apa-apa secara eksplisit kepada pemanggil, sebaliknya mengembalikan nilai yang dihantar semula ke fungsi panggilan. Walaupun fungsi boleh mempunyai berbilang penyataan pulangan, hanya satu daripadanya boleh dipanggil untuk setiap panggilan ke setiap penyataan tersebut.
Pernyataan return hampir selalu diletakkan di hujung blok fungsi, tujuannya adalah untuk mengembalikan hasil akhir pelaksanaan semua pernyataan yang terkandung dalam fungsi. Walau bagaimanapun, pernyataan return juga mungkin muncul sebelum blok fungsi untuk menghentikan pelaksanaan semua pernyataan berikutnya dalam blok. Ini boleh berlaku jika ia digunakan untuk menghalang pelaksanaan fungsi. Ini menyebabkan pemanggil segera memulakan semula pelaksanaan program. Apabila tiada nilai diberikan untuk objek return, jenis objek return "None" adalah bersamaan dengan yang dalam Python.
Contoh
Contoh berikut menunjukkan penggunaan return dalam Python -
# Show return statement class Test: def __init__(self): self.str = "Happy Birthday" self.x = "Pradeep" # This function returns an object of Test def fun(): return Test() # Driver code to test above method t = fun() print(t.str) print(t.x)
Output
Happy Birthday Pradeep
Perbezaan antara Hasil dan Pulangan dalam Python
Jadual berikut menyerlahkan perbezaan utama antara Hasil dan Pulangan dalam Python -
Agak asas | Output | Kembali |
---|---|---|
Asas | Dalam kebanyakan kes, anda perlu menggunakan fungsi hasil untuk menukar fungsi Python biasa kepada penjana. | Dalam kebanyakan kes, penamatan pelaksanaan diisyaratkan dengan menggunakan kata kunci pulangan, yang "mengembalikan" keputusan kepada pernyataan yang memanggilnya. |
Ciri-ciri | Ia menggantikan pengembalian fungsi untuk menjeda pelaksanaan fungsi tanpa kehilangan sebarang pembolehubah setempat. | Ia keluar dari fungsi dan mengembalikan nilai kepada pemanggilnya. |
Gunakan | Pemanggil akan menggunakan fungsi ini apabila penjana memberikan hasil perantaraan kepada pemanggil. | Apabila fungsi akan melepasi nilai, adalah perlu untuk menggunakan ini. |
Laksanakan | Kod yang ditulis selepas pernyataan hasil akan dilaksanakan dalam panggilan fungsi berikut. | Walaupun kod yang ditulis selepas penyata pemulangan tidak akan dilaksanakan. |
Kompilkan | Ia mempunyai keupayaan untuk berjalan beberapa kali. | Ia hanya berjalan sekali pada satu masa. |
Kesimpulan
Pernyataanhasil menjana objek penjana dan boleh mengembalikan berbilang nilai kepada pemanggil tanpa menamatkan atur cara, manakala pernyataan return digunakan untuk mengembalikan nilai kepada pemanggil dari dalam fungsi, yang menamatkan atur cara. Pernyataan pulangan digunakan untuk mengembalikan nilai dari dalam fungsi kepada pemanggil.
Atas ialah kandungan terperinci Apakah perbezaan antara Hasil dan Pulangan dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Artikel ini telah memilih beberapa laman web projek "selesai" Python dan portal sumber pembelajaran "blockbuster" peringkat tinggi untuk anda. Sama ada anda sedang mencari inspirasi pembangunan, mengamati dan belajar kod sumber peringkat induk, atau secara sistematik meningkatkan keupayaan praktikal anda, platform ini tidak boleh dilepaskan dan dapat membantu anda berkembang menjadi tuan python dengan cepat.

Untuk memulakan pembelajaran mesin kuantum (QML), alat pilihan adalah Python, dan perpustakaan seperti Pennylane, Qiskit, Tensorflowquantum atau Pytorchquantum perlu dipasang; Kemudian membiasakan diri dengan proses dengan menjalankan contoh, seperti menggunakan Pennylane untuk membina rangkaian saraf kuantum; kemudian melaksanakan model mengikut langkah -langkah penyediaan set data, pengekodan data, membina litar kuantum parametrik, latihan pengoptimuman klasik, dan lain -lain; Dalam pertempuran sebenar, anda harus mengelakkan mengejar model kompleks dari awal, memberi perhatian kepada batasan perkakasan, mengamalkan struktur model hibrid, dan terus merujuk kepada dokumen terkini dan dokumen rasmi untuk menindaklanjuti pembangunan.

Gunakan subprocess.run () untuk melaksanakan perintah shell dengan selamat dan menangkap output. Adalah disyorkan untuk lulus parameter dalam senarai untuk mengelakkan risiko suntikan; 2. Apabila ciri -ciri shell diperlukan, anda boleh menetapkan shell = benar, tetapi berhati -hati dengan suntikan arahan; 3. Gunakan subprocess.popen untuk merealisasikan pemprosesan output masa nyata; 4. Tetapkan semak = benar untuk membuang pengecualian apabila arahan gagal; 5. Anda boleh secara langsung memanggil rantai untuk mendapatkan output dalam senario mudah; Anda harus memberi keutamaan kepada subprocess.run () dalam kehidupan seharian untuk mengelakkan menggunakan os.system () atau modul yang tidak ditetapkan. Kaedah di atas mengatasi penggunaan teras untuk melaksanakan perintah shell di Python.

Gunakan sendi Seaborn untuk dengan cepat menggambarkan hubungan dan pengedaran antara dua pembolehubah; 2. 3. Tambah garis regresi dan maklumat ketumpatan kepada jenis = "reg", dan gabungkan marginal_kws untuk menetapkan gaya plot tepi; 4. Apabila jumlah data besar, disarankan untuk menggunakan "hex"

Untuk menguasai crawler web python, anda perlu memahami tiga langkah teras: 1. Gunakan permintaan untuk memulakan permintaan, dapatkan kandungan laman web melalui mendapatkan kaedah, perhatikan untuk menetapkan tajuk, pengendalian pengecualian, dan mematuhi robots.txt; 2. Gunakan BeautifulSoup atau XPath untuk mengekstrak data. Yang pertama sesuai untuk parsing mudah, sementara yang terakhir lebih fleksibel dan sesuai untuk struktur kompleks; 3. Gunakan selenium untuk mensimulasikan operasi penyemak imbas untuk kandungan pemuatan dinamik. Walaupun kelajuannya perlahan, ia dapat mengatasi halaman yang kompleks. Anda juga boleh cuba mencari antara muka API laman web untuk meningkatkan kecekapan.

Senarai rentetan boleh digabungkan dengan kaedah Join (), seperti '' .join (kata) untuk mendapatkan "HelloWorldFrompython"; 2. Senarai nombor mesti ditukar kepada rentetan dengan peta (str, nombor) atau [str (x) forxinnumbers] sebelum menyertai; 3. Mana -mana senarai jenis boleh ditukar secara langsung kepada rentetan dengan kurungan dan petikan, sesuai untuk debugging; 4. Format tersuai boleh dilaksanakan oleh ekspresi penjana yang digabungkan dengan gabungan (), seperti '|' .join (f "[{item}]" foriteminitems) output "[a] | [a]

Pasang PYODBC: Gunakan perintah PipinstallPyoDBC untuk memasang perpustakaan; 2. Sambungkan SQLServer: Gunakan rentetan sambungan yang mengandungi pemacu, pelayan, pangkalan data, uid/pwd atau aman 3. Semak pemacu yang dipasang: Jalankan pyodbc.drivers () dan tapis nama pemacu yang mengandungi 'SQLServer' untuk memastikan nama pemacu yang betul digunakan seperti 'ODBCDriver17 untuk SQLServer'; 4. Parameter utama rentetan sambungan

Gunakan httpx.asyncclient untuk memulakan permintaan HTTP asynchronous dengan cekap. 1. Asas mendapatkan permintaan menguruskan pelanggan melalui asyncwith dan gunakan AwaitClient.get untuk memulakan permintaan yang tidak menyekat; 2. Menggabungkan Asyncio.Gather untuk menggabungkan dengan asyncio.Gather dapat meningkatkan prestasi dengan ketara, dan jumlah masa adalah sama dengan permintaan yang paling lambat; 3. Menyokong pengepala adat, pengesahan, tetapan base_url dan masa tamat; 4. Boleh menghantar permintaan pos dan membawa data JSON; 5. Beri perhatian untuk mengelakkan pencampuran kod asynchronous segerak. Sokongan proksi perlu memberi perhatian kepada keserasian back-end, yang sesuai untuk crawler atau agregasi API dan senario lain.
