Simple and lightweight quarter support for python datetime
Project description
datetime-quarter
Simple quarter support for python datetime.date
Setup
- Install via pip (
pip install datetime-quarter
) - or via git (
git clone "https://github.com/BetaS/datetime-quarter"
) - Check availability in your project like below
from datequarter import DateQuarter
sample = DateQuarter(2019, 4)
print(sample) # 2019 4Q
Operations
1. Creation
item = DateQuarter(2019, 4) # 2019 4Q
item = DateQuarter(2018, 8) # 2019 4Q
for convinienceitem = DateQuarter.from_date(datetime.date(2019, 12, 31)) # 2019 4Q
2. Adding or sub quarter
DateQuarter(2019, 4)+1 # 2020 1Q
DateQuarter(2019, 4)-4 # 2018 4Q
3. Getting distance
DateQuarter(2019, 4) - DateQuarter(2019, 1) # 3Q
DateQuarter(2019, 1) - DateQuarter(2019, 4) # -3Q
4. Comparison of DateQuarter
DateQuarter(2019, 1) > DateQuarter(2019, 4) # False
DateQuarter(2019, 1) < DateQuarter(2019, 4) # True
DateQuarter(2019, 1) == DateQuarter(2019, 4) # False
DateQuarter(2019, 1) != DateQuarter(2019, 4) # True
- also support
>=
and<=
5. Comparison of datetime.date
datetime.date(2019, 12, 31) in DateQuarter(2019, 1) # False
datetime.date(2019, 12, 31) in DateQuarter(2019, 4) # True
- also support
>
,>=
and vice versa
6. Getting start and end date
DateQuarter(2019, 1).start_date() # datetime.date(2019, 1, 1)
DateQuarter(2019, 1).end_date() # datetime.date(2019, 3, 31)
7. Iterate over containing date
quarter = DateQuarter(2019, 1)
for day in quarter.days():
print(day) # [datetime.date(2019, 1, 1), ..., datetime.date(2019, 3, 31)]
8. Iterate between DateQuarter
start = DateQuarter(2019, 1)
end = DateQuarter(2019, 4)
for quarter in DateQuarter.between(start, end):
print(quarter) # [DateQuarter(2019, 1), DateQuarter(2019, 2) , DateQuarter(2019,3)]
- also it support reversed case
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
datetime-quarter-1.0.3.tar.gz
(2.7 kB
view hashes)
Built Distribution
Close
Hashes for datetime_quarter-1.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e5d89d06175366d5e5693900ecd2e700e4dcd23705b91acd6bd123a65281787d |
|
MD5 | 9a10c746af26af7784875e43398d26a3 |
|
BLAKE2b-256 | a440d981eda9ede2f5d2a9a31b43d640836595a1679543c54103c71eaca61f9b |