Python 时区仅使用 AWS Lambda 中可用的模块?
Python timezone using only modules available in AWS Lambda?
我正在尝试 运行 此代码改编自 。
from datetime import datetime
from pytz import timezone
import pytz
def lambda_handler(event, context):
date_format='%m/%d/%Y %H:%M:%S %Z'
date = datetime.now(tz=pytz.utc)
print('Current date & time is:', date.strftime(date_format))
date = date.astimezone(timezone('US/Pacific'))
print('Local date & time is :', date.strftime(date_format))
我运行正在使用 AWS Lambda。我收到此错误:
Response:
{
"errorMessage": "Unable to import module 'lambda_function': No module named 'pytz'",
"errorType": "Runtime.ImportModuleError"
}
如何仅使用 AWS Lambda 中可用的导入来解决此问题?我想保持代码非常简约,以便可以将其直接复制粘贴到 AWS 控制台中,而无需添加有关如何设置程序包等的说明。
如果您无法访问 AWS Lambda 中的 pytz
,您可以使用 python-dateutil
。
在这种情况下,您可以执行以下操作:
import datetime
import dateutil
date_format='%m/%d/%Y %H:%M:%S %Z'
IST = dateutil.tz.gettz('Asia/Kolkata')
print('Current date & time is : ',datetime.datetime.now(tz=IST).strftime(date_format))
or
eastern = dateutil.tz.gettz('US/Eastern')
print('Current date & time is : ',datetime.datetime.now(tz=eastern).strftime(date_format))
预览如下:
我正在尝试 运行 此代码改编自
from datetime import datetime
from pytz import timezone
import pytz
def lambda_handler(event, context):
date_format='%m/%d/%Y %H:%M:%S %Z'
date = datetime.now(tz=pytz.utc)
print('Current date & time is:', date.strftime(date_format))
date = date.astimezone(timezone('US/Pacific'))
print('Local date & time is :', date.strftime(date_format))
我运行正在使用 AWS Lambda。我收到此错误:
Response:
{
"errorMessage": "Unable to import module 'lambda_function': No module named 'pytz'",
"errorType": "Runtime.ImportModuleError"
}
如何仅使用 AWS Lambda 中可用的导入来解决此问题?我想保持代码非常简约,以便可以将其直接复制粘贴到 AWS 控制台中,而无需添加有关如何设置程序包等的说明。
如果您无法访问 AWS Lambda 中的 pytz
,您可以使用 python-dateutil
。
在这种情况下,您可以执行以下操作:
import datetime
import dateutil
date_format='%m/%d/%Y %H:%M:%S %Z'
IST = dateutil.tz.gettz('Asia/Kolkata')
print('Current date & time is : ',datetime.datetime.now(tz=IST).strftime(date_format))
or
eastern = dateutil.tz.gettz('US/Eastern')
print('Current date & time is : ',datetime.datetime.now(tz=eastern).strftime(date_format))
预览如下: