summaryrefslogtreecommitdiff
path: root/src/pytz/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/pytz/__init__.py')
-rw-r--r--src/pytz/__init__.py7
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)