Temporal Datetime¶
Work with aware and naive datetimes.
DateTime Module¶
Date and time operations.
This submodule provides utilities for working with datetime objects including creation, parsing, formatting, and conversions.
Examples¶
from rite.temporal.datetime import datetime_now, datetime_format now = datetime_now() datetime_format(now) '2024-12-27 15:30:00'
Modules¶
datetime_format
¶
DateTime Format¶
Format datetime to string.
Examples¶
from rite.temporal.datetime import datetime_format from datetime import datetime datetime_format(datetime.now())
Functions¶
datetime_format(dt: datetime, fmt: str = '%Y-%m-%d %H:%M:%S') -> str
¶
Format datetime to string.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
dt
|
datetime
|
Datetime object. |
required |
fmt
|
str
|
Format string. Defaults to "%Y-%m-%d %H:%M:%S". |
'%Y-%m-%d %H:%M:%S'
|
Returns:
| Type | Description |
|---|---|
str
|
Formatted datetime string. |
Examples:
>>> from datetime import datetime
>>> dt = datetime(2024, 12, 27, 15, 30)
>>> datetime_format(dt)
'2024-12-27 15:30:00'
>>> datetime_format(dt, "%d/%m/%Y")
'27/12/2024'
Notes
See strftime documentation for format codes.
datetime_from_timestamp
¶
DateTime From Timestamp¶
Create datetime from UNIX timestamp.
Examples¶
from rite.temporal.datetime import datetime_from_timestamp datetime_from_timestamp(1735315200)
Functions¶
datetime_from_timestamp(timestamp: int | float, tz: timezone | None = None) -> datetime
¶
Create datetime from UNIX timestamp.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
timestamp
|
int | float
|
UNIX timestamp (seconds since epoch). |
required |
tz
|
timezone | None
|
Timezone. Defaults to UTC. |
None
|
Returns:
| Type | Description |
|---|---|
datetime
|
Datetime object. |
Examples:
>>> datetime_from_timestamp(1735315200)
datetime.datetime(2024, 12, 27, ...)
>>> datetime_from_timestamp(0, timezone.utc)
datetime.datetime(1970, 1, 1, 0, 0, tzinfo=...)
Notes
Handles both int and float timestamps. Defaults to UTC timezone.
datetime_now
¶
DateTime Now¶
Get current datetime.
Examples¶
from rite.temporal.datetime import datetime_now datetime_now() datetime.datetime(2025, 12, 27, ...)
Functions¶
datetime_now(tz: timezone | None = None) -> datetime
¶
Get current datetime.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
tz
|
timezone | None
|
Timezone. Defaults to UTC. |
None
|
Returns:
| Type | Description |
|---|---|
datetime
|
Current datetime object. |
Examples:
>>> datetime_now()
datetime.datetime(2025, 12, 27, ...)
>>> datetime_now(timezone.utc)
datetime.datetime(2025, 12, 27, ..., tzinfo=...)
Notes
Uses timezone-aware datetime. Defaults to UTC if no timezone provided.
datetime_parse
¶
DateTime Parse¶
Parse datetime from string.
Examples¶
from rite.temporal.datetime import datetime_parse datetime_parse("2024-12-27", "%Y-%m-%d")
Functions¶
datetime_parse(date_string: str, fmt: str = '%Y-%m-%d %H:%M:%S') -> datetime
¶
Parse datetime from string.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
date_string
|
str
|
Date/time string. |
required |
fmt
|
str
|
Format string. Defaults to "%Y-%m-%d %H:%M:%S". |
'%Y-%m-%d %H:%M:%S'
|
Returns:
| Type | Description |
|---|---|
datetime
|
Parsed datetime object. |
Examples:
>>> datetime_parse("2024-12-27", "%Y-%m-%d")
datetime.datetime(2024, 12, 27, 0, 0)
>>> datetime_parse("27/12/2024 15:30", "%d/%m/%Y %H:%M")
datetime.datetime(2024, 12, 27, 15, 30)
Notes
See strftime documentation for format codes. Returns naive datetime (no timezone).
datetime_to_iso
¶
DateTime To ISO¶
Convert datetime to ISO 8601 string.
Examples¶
from rite.temporal.datetime import datetime_to_iso from datetime import datetime datetime_to_iso(datetime.now())
Functions¶
datetime_to_iso(dt: datetime) -> str
¶
Convert datetime to ISO 8601 string.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
dt
|
datetime
|
Datetime object. |
required |
Returns:
| Type | Description |
|---|---|
str
|
ISO 8601 formatted string. |
Examples:
>>> from datetime import datetime, timezone
>>> dt = datetime(2024, 12, 27, 15, 30, tzinfo=timezone.utc)
>>> datetime_to_iso(dt)
'2024-12-27T15:30:00+00:00'
Notes
Uses isoformat() method. Includes timezone if present.
datetime_to_timestamp
¶
DateTime To Timestamp¶
Convert datetime to UNIX timestamp.
Examples¶
from rite.temporal.datetime import datetime_to_timestamp from datetime import datetime datetime_to_timestamp(datetime(2024, 12, 27))
Functions¶
datetime_to_timestamp(dt: datetime) -> int
¶
Convert datetime to UNIX timestamp.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
dt
|
datetime
|
Datetime object. |
required |
Returns:
| Type | Description |
|---|---|
int
|
UNIX timestamp as integer. |
Examples:
>>> from datetime import datetime, timezone
>>> dt = datetime(1970, 1, 1, tzinfo=timezone.utc)
>>> datetime_to_timestamp(dt)
0
Notes
Returns integer (seconds). For milliseconds, use int(dt.timestamp() * 1000).
options: show_root_heading: true show_source: false heading_level: 2