ym
Data type that handles year and month values.
Usage
Import
from ym import ym
Initialize
from year, month
ym(2020, 4) #=> ym(2020, 4)
from current month
ym.current() #=> ym(2020, 7)
from string
ym.parse("2020-04") #=> ym(2020, 4)
from date or datetime object
from datetime import date
ym.parse(date.today()) #=> ym(2020, 7)
Get year, month
current = ym.current() #=> ym(2020, 7)
current.y #=> 2020
current.m #=> 7
Add, Sub
ym(2020, 4) + 10 #=> ym(2021, 2)
ym(2020, 4) - 10 #=> ym(2019, 6)
ym(2020, 7) - ym(2020, 4) #=> 3
Compare
ym(2020, 7) < ym(2020, 4) #=> False
ym(2020, 7) > ym(2020, 4) #=> True
ym(2020, 7) == ym(2020, 4) #=> False
Range
list(ym(2020, 4).to(2020, 7)) #=> [ym(2020, 4), ym(2020, 5), ym(2020, 6)]
current = ym.current() #=> ym(2020, 7)
list(current.to(current + 6)) #=> [ym(2020, 7), ym(2020, 8), ym(2020, 9), ym(2020, 10), ym(2020, 11), ym(2020, 12)]