Skip to content

Instantly share code, notes, and snippets.

View spatialtime's full-sized avatar
🎨
Focusing

Matt Savage spatialtime

🎨
Focusing
View GitHub Profile
@spatialtime
spatialtime / iso8601_datetime.go
Created May 12, 2020 16:33
Golang formatting and parsing of ISO 8601 dates, times, and time zones.
// This snippet demonstrates Golang formatting and parsing of
// ISO 8601 dates, times, time zones
import(
"fmt"
"time"
)
loc, _ := time.LoadLocation("America/Los_Angeles")
@spatialtime
spatialtime / iso8601_datetime.py
Created May 12, 2020 16:18
Pythonic formatting and parsing of ISO 8601 dates, times, and time zones.
# This snippet demonstrates Pythonic formatting and parsing of ISO 8601 dates.
from datetime import datetime
# datetime.strptime() is used to parse iso 8601 strings to
# Python datetime.datetime instances.
# datetime.strftime() is used to format Python datetime.datetime instances
# to ISO 8601 strings.
@spatialtime
spatialtime / iso8601_duration.py
Last active May 14, 2024 18:55
Python and ISO 8601 durations
# This snippet demonstrates Pythonic formatting and parsing of
# ISO 8601 durations.
# A little work is required to navigate between Python's
# timedelta syntax and ISO 8601 duration syntax.
import re
from datetime import datetime
from datetime import timedelta
@spatialtime
spatialtime / iso8601_week.py
Last active May 12, 2020 16:01
Pythonic formatting and parsing of ISO 8601 weeks.
# This snippet demonstrates Pythonic formatting and parsing of
# ISO 8601 weeks.
# The first ISO week of the year is the first week containing
# a Thursday.
# ISO weeks begin on Monday, with Monday being day 1.
from datetime import datetime
d = datetime.strptime("2020-W17-7", "%G-W%V-%u")
@spatialtime
spatialtime / iso8601_ordinaldate.py
Last active May 12, 2020 15:57
Pythonic formatting and parsing of ISO 8601 ordinal dates.
# This snippet demonstrates Pythonic formatting and parsing of
# ISO 8601 ordinal dates (4-digit year + "-" + ordinal day).
# Note: an ordinal day in this context is the nth day of
# the year, with Jan 1 being ordinal day 1 and Dec 31
# of non-leap year (a "common year") being day 365.
from datetime import datetime
d = datetime.strptime("2020-355", "%Y-%j")