Heim  >  Artikel  >  Backend-Entwicklung  >  Welche Korrektur ist erforderlich, damit eine Python-Funktion Schaltjahre korrekt bestimmt?

Welche Korrektur ist erforderlich, damit eine Python-Funktion Schaltjahre korrekt bestimmt?

Linda Hamilton
Linda HamiltonOriginal
2024-10-21 18:52:03706Durchsuche

What Correction is Needed to Make a Python Function Determine Leap Years Correctly?

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:

  • Teilbar durch 4
  • Nicht teilbar durch 100 (Ausnahme: teilbar durch 400)

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn