🗓 Classes and functions with intuitive names for common dates operations
Project description
Date Assistant
For more details take a look at the docs
Installation
date-assistant is published on PyPI and can be installed from there:
pip install date-assistant
Usage
💡 Please consider that the default date format is '%Y-%m-%d'. Anyways, you can indicate the format of your date if you need to.
Functions approach
Get the difference of days, months or years between 2 dates
from date_assistant import (
get_days_diff_between,
get_months_diff_between,
get_years_diff_between,
)
from date_assistant.formats import DD_MM_YYYY, YYYY_MM
get_days_diff_between('2021-01-01', '2021-01-11')
# 10
get_days_diff_between('2021-01-01', '21-01-2021', date2_format=DD_MM_YYYY)
# 20
get_months_diff_between('2021-01-01', '2022-01-11')
# 12
get_months_diff_between('2021-01-05', '2021-02-01')
# 0
get_months_diff_between('2021-01', '2021-02-21', date1_format=YYYY_MM)
# 1
get_years_diff_between('2021-01-01', '2022-01-11')
# 1
get_years_diff_between('2021-01-05', '2022-01-01')
# 0
get_years_diff_between('2021-01', '2023-01-01', date1_format=YYYY_MM)
# 2
💡 See how months and years are only counted if a full year or month has passed.
Get the amount of years or months started between 2 dates
from date_assistant import (
get_months_started_between,
get_years_started_between,
)
from date_assistant.formats import YYYY_MM
get_months_started_between('2021-01-05', '2021-02-01')
# 1
get_months_started_between('2021-01-01', '2022-01-11')
# 12
get_months_started_between('2021-01', '2021-02-21', date1_format=YYYY_MM)
# 1
get_years_started_between('2021-01-01', '2020-12-31')
# 1
get_years_started_between('2021-01-05', '2022-01-01')
# 1
get_years_started_between('2021-01', '2023-01-01', date1_format=YYYY_MM)
# 2
💡 In contrast with the previous block example, here you don't need a full year or month between dates to count. If a new year or month started, it count.
Classes approach
Get the difference of days, months or years between 2 dates
from date_assistant import DateAssistant
my_birthday_2021 = DateAssistant('2021-07-13')
date_assistant_birthday = '2021-08-18'
my_birthday_2021.days_diff_with(date_assistant_birthday)
# 36
my_birthday_2021.months_diff_with(date_assistant_birthday)
# 1
my_birthday_2021.years_diff_with(date_assistant_birthday)
# 0
Get the amount of years or months started since or until some date
from date_assistant import DateAssistant
last_day_of_2021 = DateAssistant('2021-12-31')
first_day_of_2022 = '2022-01-01'
first_day_of_2023 = '2023-01-01'
date_assistant_birthday = '2021-08-18'
last_day_of_2021.years_started_until(first_day_of_2022)
# 1
last_day_of_2021.years_started_until(first_day_of_2023)
# 2
last_day_of_2021.months_started_until(first_day_of_2022)
# 1
last_day_of_2021.months_started_since(date_assistant_birthday)
# 4
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
Built Distribution
File details
Details for the file date_assistant-0.11.2.tar.gz
.
File metadata
- Download URL: date_assistant-0.11.2.tar.gz
- Upload date:
- Size: 4.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.8 CPython/3.8.0 Darwin/20.5.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6133ce037ce50ff22bc61a91c042569836c9d1a55da57f3be0419fe228aec032 |
|
MD5 | 559d6ed9bda2e15f33ba70e114183367 |
|
BLAKE2b-256 | 07cdf50a70a9075d3d9d9cb1e51387126190c81f551d0b20a1e300b09e461595 |
File details
Details for the file date_assistant-0.11.2-py3-none-any.whl
.
File metadata
- Download URL: date_assistant-0.11.2-py3-none-any.whl
- Upload date:
- Size: 4.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.8 CPython/3.8.0 Darwin/20.5.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5c9104406198124928b270180fedd60412d1b60a0078e4275d90cebb2abd9c24 |
|
MD5 | 9331aadb3662efe59c3a6327dd18eb8e |
|
BLAKE2b-256 | 7e4e374e5317607e09a2ad2a1af013bc04a86af0b7be3e9a33b7fa00816fce84 |