Python 2.5.2 (r252:60911, Sep 30 2008, 15:41:38)
[GCC 4.3.2 20080917 (Red Hat 4.3.2-4)] on linux2
import datetime days = lambda year: (datetime.date(year+1, 1, 1) - datetime.date(year, 1, 1)).days print days(2009) # Output: 365 print days(2000) # Output: 366 print days(400) # Output: 366 print days(100) # Output: 365
ファンタジックな処理だと思うけど、コード自動生成ツールで作ったんかなあ。 pythonだとこんな感じになると思ふ もっとエレガントにかけるやもしれんが import calendarDAYS_sec = 60*60*24YEAR_s...
標準モジュールの使用ありなら、なんでdatetime使わないんだ? #!/usr/bin/python# coding: utf-8import datetimedt1 = datetime.datetime(2009, 9, 1, 2, 34, 56) # 2009年9
datatimeって2.0系列で閏年の扱いが曖昧だからじゃね。 leapdays()のバグ(こっちは2.0だと直ってる)と同じく、timedeltaのdaysって400で割り切れる年を平年と見なす(本来は閏年)バグが入って...
Python 2.5.2 (r252:60911, Sep 30 2008, 15:41:38) [GCC 4.3.2 20080917 (Red Hat 4.3.2-4)] on linux2 Type "help", "copyright", "credits" or "license" for more information.import datetimedays = lambda year: (datetim...
閏年は考慮されてるようにみえないけど?
閏年が考慮されてるように見えないのなら、ちゃんとソース読むところからはじめないと駄目だと思うが。 なぜcalendarをインポートしてるかって言うと、以下の一文入れるから。 ans = yea...
西暦0年とかX月0日とか存在しないよ。 yearとdayは掛け算の前に-1すべきだと思う。
yearに関してはその通りだと思うけど、dayは良いんじゃね? 最後に-1secして23:59:59って表示してるんだから。