| Server IP : 127.0.0.1 / Your IP : 216.73.216.109 Web Server : Apache/2.4.54 (Win64) OpenSSL/1.1.1q PHP/8.1.10 System : Windows NT DESKTOP-E5T4RUN 10.0 build 19045 (Windows 10) AMD64 User : SERVERWEB ( 0) PHP Version : 8.1.10 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/cygwin64/lib/python3.9/site-packages/babel/localtime/ |
Upload File : |
try:
import pytz
except ModuleNotFoundError:
pytz = None
import zoneinfo
def _get_tzinfo(tzenv: str):
"""Get the tzinfo from `zoneinfo` or `pytz`
:param tzenv: timezone in the form of Continent/City
:return: tzinfo object or None if not found
"""
if pytz:
try:
return pytz.timezone(tzenv)
except pytz.UnknownTimeZoneError:
pass
else:
try:
return zoneinfo.ZoneInfo(tzenv)
except zoneinfo.ZoneInfoNotFoundError:
pass
return None
def _get_tzinfo_or_raise(tzenv: str):
tzinfo = _get_tzinfo(tzenv)
if tzinfo is None:
raise LookupError(
f"Can not find timezone {tzenv}. \n"
"Timezone names are generally in the form `Continent/City`."
)
return tzinfo
def _get_tzinfo_from_file(tzfilename: str):
with open(tzfilename, 'rb') as tzfile:
if pytz:
return pytz.tzfile.build_tzinfo('local', tzfile)
else:
return zoneinfo.ZoneInfo.from_file(tzfile)