Menentukan Tahun Lompat
Anda sedang cuba menulis program untuk memastikan sama ada tahun tertentu layak sebagai tahun lompat. Walau bagaimanapun, kod semasa anda mengembalikan "Tiada" apabila dilaksanakan dalam Python IDLE.
Ingat bahawa tahun lompat memenuhi kriteria berikut:
Memeriksa kod anda:
<code class="python">def leapyr(n): if n%4==0 and n%100!=0: if n%400==0: print(n, "is a leap year.") elif n%4!=0: print(n, "is not a leap year.") print(leapyr(1900))</code>
Isunya terletak pada baris terakhir: print(leapyr(1900)). Apabila anda memanggil fungsi yang tidak mengembalikan nilai (seperti leapyr dalam kes ini), nilai pulangan sentiasa Tiada. Untuk menyelesaikan masalah ini, anda boleh terus mencetak hasil dalam fungsi itu sendiri:
<code class="python">def leapyr(n): if n%4==0 and n%100!=0: if n%400==0: return n, "is a leap year." elif n%4!=0: return n, "is not a leap year." result = leapyr(1900) print(result)</code>
Pendekatan Alternatif Menggunakan calendar.isleap
Python menyediakan fungsi terbina dalam dinamakan calendar.isleap yang secara jelas menentukan sama ada tahun tertentu ialah tahun lompat:
<code class="python">import calendar print(calendar.isleap(1900))</code>
Fungsi ini memudahkan tugasan dan mengembalikan nilai Boolean yang mudah.
Atas ialah kandungan terperinci Apakah Pembetulan yang Diperlukan untuk Membuat Fungsi Python Menentukan Tahun Lompat dengan Betul?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!