Python 从本地库导入boto

Python 从本地库导入boto,python,boto,Python,Boto,我尝试将boto用作下载库,而不是在我的机器上全局安装它。我可以导入boto,但是当我运行boto.connect\u dynamodb()时,我得到一个错误: ImportError: No module named dynamodb.layer2 以下是我的文件结构: project/ project/ __init__.py libraries/ __init__.py flask/

我尝试将boto用作下载库,而不是在我的机器上全局安装它。我可以导入boto,但是当我运行boto.connect\u dynamodb()时,我得到一个错误:

ImportError: No module named dynamodb.layer2
以下是我的文件结构:

project/
    project/
        __init__.py
        libraries/
            __init__.py
            flask/
            boto/
        views/
            ....
        modules/
            __init__.py
            db.py
            ....
        templates/
            ....
        static/
            ....
    runserver.py
有关文件的内容如下:

项目/项目/模块/db.py
从project.libraries导入boto
连接=连接发电机B(
aws\u访问\u密钥\u id=“”,
aws_secret_access_key='')

我做错了什么?提前感谢。

我强烈推荐使用virtualenv。这正是它设计的目的

如果由于某种原因无法实现,请确保将boto安装目录添加到PYTHONPATH中。因此,从您的示例中可以看出:

export PYTHONPATH=/path_to_project/project/libraries

应该让事情顺利进行。但同样,virtualenv是你的朋友。

虽然我同意garnaat对virtualenv的优点(并非双关语)的看法,但我认为你的问题可能是你的boto版本没有DynamoDB支持。例如,我最近使用pip安装了boto,现在是版本2.0。您可以使用
boto.version

根据发行说明(参见下面的链接),DynamoDB支持是在版本2.2.0中添加的

您要做的最简单的事情(如果您安装了git)是从GitHub克隆它:

git clone https://github.com/boto/boto.git
或者,如果您没有安装git并且不想安装它,您可以从GitHub(或)获得最新的发行标签(2.3.0)

工具书类

哪里有dynamodb库?可能boto只是想导入dynamodb.layer2。你在别的地方也有,比如project.librarys.boto。也许将dynamodb的路径添加到sys.path就是解决方案?首先检查sys.path中的内容。只需导入sys并打印sys.path。这是python查找库的路径列表。您可以添加您的路径,例如sys.path.append('[…]/project/libraries/boto/dynamodb')。若要添加此路径,我对所有这些都是新手,但我安装了virtualenv,但必须首先在终端中运行“source bin/activate”。。在进入python交互终端之前
git clone https://github.com/boto/boto.git