Rumah >pembangunan bahagian belakang >Tutorial Python >Mengapa Fungsi Python Kadang-kadang Mengembalikan `Tiada`?

Mengapa Fungsi Python Kadang-kadang Mengembalikan `Tiada`?

Linda Hamilton
Linda Hamiltonasal
2024-12-06 12:28:11751semak imbas

Why Do Python Functions Sometimes Return `None`?

Mengapa Fungsi Mungkin Tiada Kembali

Dalam Python, fungsi dijangka mengembalikan nilai. Jika tiada penyata pulangan yang jelas diberikan, nilai pulangan lalai ialah Tiada. Walau bagaimanapun, ini boleh menyebabkan kekeliruan, terutamanya apabila fungsi dijangka melakukan tindakan tertentu tanpa mengembalikan apa-apa secara eksplisit.

Pertimbangkan kod berikut:

def print_multiplication(n):
    i = 1
    while i <= 10:
        print(n * i, end=' ')
        i += 1

print(print_multiplication(30))

Fungsi ini mencetak jadual pendaraban untuk nombor 30. Penyata cetakan dalam fungsi mencetak setiap produk tanpa menggunakan penyata pemulangan. Akibatnya, fungsi mengembalikan Tiada secara lalai.

Memahami Nilai Pulangan

Pernyataan cetakan bertujuan untuk memaparkan jadual pendaraban, tetapi ia tidak mengembalikan apa-apa. Akibatnya, print_multiplication(30) juga mengembalikan Tiada. Apabila kami cuba mencetak nilai pulangan, Tiada yang dicetak dan bukannya output yang dijangkakan.

Membetulkan Fungsi

Untuk menyelesaikan isu ini, kita perlu menentukan yang dikehendaki nilai pulangan. Memandangkan fungsi ini bertujuan untuk melaksanakan tugas tanpa mengembalikan data tertentu, kami boleh menggunakan kata kunci None secara eksplisit:

def print_multiplication(n):
    i = 1
    while i <= 10:
        print(n * i, end=' ')
        i += 1
    return None

print(print_multiplication(30))

Dengan mengembalikan None secara eksplisit, kami memastikan bahawa fungsi itu mengikut konvensyen Python untuk mengembalikan nilai tanpa menyediakan sebarang data khusus. Sekarang, apabila kita mencetak nilai pulangan, ia akan mengeluarkan Tiada dengan betul.

Atas ialah kandungan terperinci Mengapa Fungsi Python Kadang-kadang Mengembalikan `Tiada`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn