我正在研究有关dynamodb的this指南。对于查询和扫描,当我尝试运行条件导入命令时,出现错误“ ImportError:没有名为'boto3.dynamodb.condition”的模块。

     from boto3.dynamodb.conditions import Key, Attr


我在Python 3.5环境中使用Anaconda,并在Windows的Jupyter笔记本中执行代码。 Boto3已通过Anaconda成功安装,并且我的AWS密钥正在运行。在导入boto3,创建表,放置和获取项目时,我没有任何问题。

我在boto3问题上看到的所有其他帖子似乎都与没有利用我的笔记本中正在使用的IAM account或似乎不适用的[路径变量问题](ModuleNotFoundError when executing Python program from bash script)有关。

   import boto3
   dynamodb = boto3.resource('dynamodb', 'us-east-1')

   from boto3.dynamodb.condition import Key, Attr

   ---------------------------------------------------------------------------
   ImportError                               Traceback (most recent call last)
   <ipython-input-10-ba2b4a731ee7> in <module>()
   ----> 1 from boto3.dynamodb.condition import Key, Attr

   ImportError: No module named 'boto3.dynamodb.condition'


是否可以将完整的dynamodb功能与anaconda和jupyter笔记本一起使用?有没有更好的方法来设置环境以使用boto3 dynamodb功能?

最佳答案

问题只是您导入中的一个小错字!

正如您在帖子中所说的,该指南说:

from boto3.dynamodb.conditions import Key, Attr


但您的代码包含以下内容:

from boto3.dynamodb.condition import Key, Attr


请注意s上缺少的condition。修复import语句后,我能够在带有Python 3.5环境的Anaconda中运行您的代码。

关于python - 如何在Anaconda中使用boto3.dynamodb.condition导入,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57280218/

10-12 15:42