diff options
Diffstat (limited to 'src/pytz/__init__.py')
-rw-r--r-- | src/pytz/__init__.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/pytz/__init__.py b/src/pytz/__init__.py index 6208a1e..73cb991 100644 --- a/src/pytz/__init__.py +++ b/src/pytz/__init__.py @@ -166,7 +166,7 @@ def timezone(zone): # All valid timezones are ASCII raise UnknownTimeZoneError(zone) - zone = _unmunge_zone(zone) + zone = _case_insensitive_zone_lookup(_unmunge_zone(zone)) if zone not in _tzinfo_cache: if zone in all_timezones_set: fp = open_resource(zone) @@ -185,6 +185,11 @@ def _unmunge_zone(zone): return zone.replace('_plus_', '+').replace('_minus_', '-') +def _case_insensitive_zone_lookup(zone): + """Get case-insensitively matching timezone, if found, else return zone unchanged""" + return _all_timezones_lower_to_standard.get(zone.lower()) or zone + + ZERO = datetime.timedelta(0) HOUR = datetime.timedelta(hours=1) |