Perbezaan Formal antara "cetak" dan "kembali" dalam Python
Apabila mendalami bidang pengaturcaraan Python, anda mungkin menghadapi soalan perbezaan antara pernyataan "cetak" dan "kembali" dalam fungsi. Walaupun output mungkin kelihatan sama untuk fungsi yang hanya mencetak dan mengembalikan integer, operasi formalnya sangat berbeza.
Pernyataan "cetak", seperti namanya, mengarahkan hujahnya ke output standard, memaparkan nilai pada skrin. Dalam contoh yang diberikan:
def funct1(param1): print(param1) return(param1)
"print(param1)" mencetak nilai parameter, manakala "return(param1)" menghantar nilai kembali kepada pemanggil fungsi. Oleh itu, fungsi ini boleh mengembalikan nilai dan mencetaknya pada skrin pada masa yang sama.
Sebaliknya, pernyataan "kembali" berfungsi secara eksklusif untuk menghantar nilai kembali kepada kod pemanggilan. Jika fungsi tidak mengisytiharkan pernyataan "kembali" secara eksplisit, ia secara tersirat mengembalikan "Tiada." Oleh itu, jika tiada pernyataan "kembali":
def funct2(param2): print(param2)
Fungsi masih akan memaparkan nilai parameter, tetapi ia tidak akan mengembalikan apa-apa yang boleh digunakan. Percubaan untuk menyimpan hasil fungsi ini dalam pembolehubah akan menghasilkan nilai "Tiada."
Untuk menggambarkan perbezaan ini, pertimbangkan kod Python berikut:
def printAndReturnNothing(): x = "hello" print(x) def printAndReturn(): x = "hello" print(x) return x def main(): ret = printAndReturn() other = printAndReturnNothing() print("ret is: %s" % ret) print("other is: %s" % other)
Apabila dilaksanakan, kod ini menghasilkan output berikut:
hello hello ret is: hello other is: None
Ini menunjukkan bahawa "cetak" mengeluarkan nilai tanpa menjejaskan nilai pulangan fungsi, manakala "kembali" menyediakan cara untuk menghantar nilai tertentu kembali kepada pemanggil. Memahami perbezaan ini adalah penting untuk pengaturcaraan Python yang berkesan.
Atas ialah kandungan terperinci Apakah perbezaan asas antara 'cetak' dan 'kembali' dalam fungsi Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!