Skip to main content

Sane date and time tools for Python.

Project description

Sane date and time tools for Python.

[![Build Status](](

What Is It?

Era is a collection of tools for managing dates/times with associated timezone information. Some fine points:

  • Era assumes UTC for all timezones when not specified.
  • Naive datetimes (those without timezones) are treated as being in the local timezone.
  • You should be using UTC for all the things. See [Problems with Localtime][2].
  • Documentation is inline in

What’s In It?

Imports so that you don’t have to import fifteen different modules.

  • calendar
  • tzlocal
  • timezone - from pytz
  • utc - from pytz
  • date
  • datetime
  • time
  • timedelta
  • tzinfo

Useful constants:

  • utc - The UTC timezone.
  • localtz - The local timezone.
  • epoch - The Unix Epoch. 1 January 1970 in UTC.

Day of week constants.

  • mon = 0
  • tue = 1
  • wed = 2
  • thu = 3
  • fri = 4
  • sat = 5
  • sun = 6

Time units. Each unit is a number of (or fraction of) seconds. These are naive in that they do not account for differences in months (a month is 30 days here), leap years (a year is 365 days), leap seconds, or any other real life scenario that would make the measurement incorrect.

  • second = 1
  • millisecond = second / 1000.0
  • microsecond = millisecond / 1000.0
  • minute = 60 * second
  • hour = 60 * minute
  • day = 24 * hour
  • week = 7 * day
  • month = 30 * day
  • year = 365 * day

Defined functions:

  • is_time - Check if a value is a time.
  • is_date - Check if a value is a date.
  • is_datetime - Check if a value is a datetime.
  • to_datetime - Convert a value to a datetime.
  • settz - Set a timezone without accounting for a time change.
  • totz - Convert a time from one timezone to another.
  • localize - Convert a time to the local timezone.
  • now - Get the current time in a particular timezone.
  • localnow - Get the current time in the local timezone.
  • daysago - Get a date from n days ago.
  • timeago - Get a time from n time ago.
  • ts - Get the Unix timestamp for a value (seconds since the epoch).
  • tsms - Get the Javascript timestamp for a value (milliseconds since the epoch).
  • fromts - Get a time from a Unix timestamp.
  • fromtsms - Get a time from a Javascript timestamp.
  • truncate - Reduce the precision of a date/time.
  • weekday - Find the date for the given day of the week.
  • prevweekday - Find the date for the most recent day of the week.
  • nextweekday - Find the date for the next week day.


Copyright (c) 2014 WiFast, Inc. This project and all of its contents is licensed under the BSD-derived license as found in the included [LICENSE][1] file.

[1]: “LICENSE” [2]: “Problems with Localtime”

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for era, version 1.1
Filename, size File type Python version Upload date Hashes
Filename, size era-1.1.tar.gz (4.4 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page