Bob was born in 2000
やのような事実をキャプチャできるようにしたいですBill's birthday is May 7th
。
両方の例で、私たちはその人の生年月日の一部のみを知っています。1つのケースでは、年のみを知っています。他の場合、月と日は知っていますが、年はわかりません。
この情報を取得するにはどうすればよいですか?
これがどのように機能するかのいくつかの例:
フィールドでNoneが未知を表すことを許可したdatetimeのようなライブラリを想像してください。次のようなコードがあります。
date_a = date(2000, 5, None)
date_b = date(2000, 6, None)
difference = date_b - date_a
assert difference.min.days == 1
assert difference.max.days == 60 # Or something close to 60.
assert equal(date_a, date_b) == False
date_c = date(2000, 5, None)
assert equal(date_a, date_c) == Maybe
これは、動作の例にすぎません。必ずしもこの正確な動作が必要なわけではありません。