sco*_*ker 6 python timezone pytz python-3.x aws-lambda
我正在编写一个lambda函数,它可以处理日期时间并尝试导入pytz,因此我可以在比较时考虑时区.
import boto3
import pytz
from datetime import timedelta, date, datetime
from boto3.dynamodb.conditions import Key, Attr
Run Code Online (Sandbox Code Playgroud)
导致它显示
{errorMessage=Unable to import module 'lambda_function'}
Run Code Online (Sandbox Code Playgroud)
但当我删除导入pytz时,该函数会触发(如果没有时区信息,它就无法正常工作)
jim*_*lly 11
您需要安装pytz包,以便它可用于您的lambda.你这样做的方法是将pip安装到你要压缩的目录中并上传到AWS(即与包含lambda函数的文件对等).
pip install -t path/to/your/lambda pytz
Run Code Online (Sandbox Code Playgroud)
然后,当您将其压缩并上传时,它将可用.
编辑添加我创建了一个工具来为你做很多 - 你可以在这里找到它:https://github.com/jimjkelly/lambda-deploy
小智 6
如果您pytz
在您的环境中无权访问,则也许您可以访问python-dateutil
。在这种情况下,您可以执行以下操作:
import datetime
import dateutil.tz
eastern = dateutil.tz.gettz('US/Eastern')
datetime.datetime.now(tz=eastern)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
7667 次 |
最近记录: |