Util for working with date and datetime objects
Project description
Datetime Helpers
A handy collection of datetime utils.
What's available?
import datetime_helpers
# Given a datetime:
>>> dt = datetime.date(2017, 4, 17)
# Check the day of week
>>> datetime_helpers.get_day_of_week(dt=dt)
'Monday'
# Check if it is a weekend
>>> datetime_helpers.is_weekend(dt=dt)
False
# Check if it is a weekday
>>> datetime_helpers.is_weekday(dt=dt)
True
# Get the previous business day
>>> datetime_helpers.get_previous_business_day(dt=dt)
datetime.date(2017, 4, 14)
# Get the next business day
>>> datetime_helpers.get_next_business_day(dt=dt)
datetime.date(2017, 4, 18)
# Get the first business day of the month
>>> datetime_helpers.get_first_business_day_of_month(dt=dt)
datetime.date(2017, 4, 3)
# Get the nth business day of the month
>>> n = 3 # e.g. third business day
>>> datetime_helpers.get_nth_business_day_of_month(dt=dt, n=n)
datetime.date(2017, 4, 5)
# Convert to a datetime string with custom format (defaults to JSON date format)
>>> datetime_helpers.datetime_to_string(dt=dt)
'2017-04-17T00:00:00.000000Z'
# Convert to a date string with custom format (defaults to YYYY-MM-DD)
>>> datetime_helpers.date_to_string(dt=dt)
'2017-04-17'
# Convert a string with custom format to datetime (defaults to JSON date format)
>>> text = '2016-04-17T00:00:00.000000Z'
>>> datetime_helpers.datetime_from_string(text=text)
datetime.datetime(2016, 4, 17, 0, 0)
# Convert a string with custom format to datetime (defaults to JSON date format)
>>> text = '2016-04-17T00:00:00.000000Z'
>>> datetime_helpers.datetime_from_string(text=text)
datetime.datetime(2016, 4, 17, 0, 0)
# Convert a windows filetime to datetime
>>> windows_filetime = 116444736000000000
>>> datetime_helpers.datetime_from_windows_filetime(windows_filetime=windows_filetime)
datetime.datetime(1970, 1, 1, 0, 0)
# Convert to seconds
>>> datetime_helpers.datetime_to_seconds(dt=dt)
1492387200.0
# Convert seconds to datetime
>>> seconds = 1492387200
>>> datetime_helpers.datetime_from_seconds(seconds=seconds)
datetime.datetime(2017, 4, 17, 0, 0)
# Convert to millis
>>> datetime_helpers.datetime_to_millis(dt=dt)
1492387200000
# Convert millis to datetime
>>> millis = 1492387200000
>>> datetime_helpers.datetime_from_millis(millis=millis)
datetime.datetime(2017, 4, 17, 0, 0)
# Convert date to datetime
>>> datetime_helpers.datetime_from_date(dt=dt)
datetime.datetime(2017, 4, 17, 0, 0)
Install
Install and update using pip.
$ pip install -U datetime-helpers
Contributing
Contributions are welcome via pull requests.
First time setup
$ git clone git@github.com:DeveloperRSquared/datetime-helpers.git
$ cd datetime-helpers
$ poetry install
$ source .venv/bin/activate
Tools including black, mypy etc. will run automatically if you install pre-commit using the instructions below
$ pre-commit install
$ pre-commit run --all-files
Running tests
$ poetry run pytest
Links
- Source Code: https://github.com/DeveloperRSquared/datetime-helpers/
- PyPI Releases: https://pypi.org/project/datetime-helpers/
- Issue Tracker: https://github.com/DeveloperRSquared/datetime-helpers/issues/
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
Close
Hashes for datetime_helpers-0.0.13-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6dd0ac03e265cc9add2035e8232cf43a5fd442509b20b612f6fdcc1e92cbd03e |
|
MD5 | e4caa6ab8a560fb39555daa782d79317 |
|
BLAKE2b-256 | d70ec0af1ed0ce9e46c641df01d35c5d965243476a3cae985a69ea6a0ac6d00a |