Bestimmen von Schaltjahren
Sie versuchen, ein Programm zu schreiben, um festzustellen, ob ein bestimmtes Jahr als Schaltjahr gilt. Ihr aktueller Code gibt jedoch „Keine“ zurück, wenn er in Python IDLE ausgeführt wird.
Denken Sie daran, dass ein Schaltjahr die folgenden Kriterien erfüllt:
Untersuchen Sie Ihren Code:
<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>
Das Problem liegt in der letzten Zeile: print(leapyr(1900)). Wenn Sie eine Funktion aufrufen, die keinen Wert zurückgibt (wie in diesem Fall leapyr), ist der Rückgabewert immer None. Um dieses Problem zu beheben, können Sie das Ergebnis direkt in der Funktion selbst drucken:
<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>
Ein alternativer Ansatz mit Calendar.isleap
Python bietet eine integrierte Funktion mit dem Namen Calendar.isleap, der explizit bestimmt, ob ein bestimmtes Jahr ein Schaltjahr ist:
<code class="python">import calendar print(calendar.isleap(1900))</code>
Diese Funktion vereinfacht die Aufgabe und gibt einen einfachen booleschen Wert zurück.
Das obige ist der detaillierte Inhalt vonWelche Korrektur ist erforderlich, damit eine Python-Funktion Schaltjahre korrekt bestimmt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!