閏年の決定
特定の年が閏年に該当するかどうかを確認するプログラムを作成しようとしています。ただし、Python IDLE で実行すると、現在のコードは "None" を返します。
閏年は次の基準を満たしていることを思い出してください:
コードの検査:
<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>
問題は最後の行 print(leapyr(1900)) にあります。値を返さない関数 (この場合は Leapyr など) を呼び出すと、戻り値は常に None になります。これを解決するには、関数自体内で結果を直接出力できます。
<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>
calendar.isleap を使用した代替アプローチ
Python は組み込み関数を提供します指定された年が閏年であるかどうかを明示的に判断する、calendar.isleap という名前の関数:
<code class="python">import calendar print(calendar.isleap(1900))</code>
この関数はタスクを簡素化し、直接的なブール値を返します。
以上がPython 関数でうるう年を正しく決定するにはどのような修正が必要ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。