Datastax Cassandra-Driver(Python)导入失败

11

当导入DataStax Cassandra驱动程序(Python)时,出现以下错误:

错误

File "cassandra.py", line 1, in <module>
    from cassandra.cluster import Cluster
File "/home/vagrant/cassandra.py", line 1, in <module>
    from cassandra.cluster import Cluster
ImportError: No module named cluster

这是代码

from cassandra.cluster import Cluster
print dir(cassandra.cluster)
cluster = Cluster()
session = cluster.connect('userspace')
rows = session.execute('SELECT user_name, gender FROM users')
for user_row in rows:
    print user_row.user_name, user_row.gender

6
问个显而易见的问题:你是否先执行了pip install cassandra-driver命令? - Ben Whaley
你已经从源代码编译了吗? - jereques
1
使用-vv运行你的Python,并执行from cassandra.cluster import Cluster。你会看到它尝试查找包的位置。确保该包在PYTHONPATH中可用。 - Mikhail Stepura
它已列在我的Python路径和pip中。 - jereques
3个回答

20

看起来名称冲突了。您的脚本名为cassandra.py,因此它是驱动程序的模块。尝试重新命名您的脚本(并不要忘记删除其.pyc文件),然后再次尝试。


1
任何与关键字匹配的文件(比如select.py)都会运行该文件,而不是解析该关键字。我之前使用了一个名为 select.py 的脚本,导致了类似的错误,当我将脚本重命名为无法与任何关键字匹配的名称时,问题得到了解决。 - Coder

1
安装 CQL 交互终端:
sudo pip install cqlsh

0

我尝试过这个,并且在我的情况下它有效: python -m pip install `

例如:python -m pip install cassandra-driver


那是另一个问题 - 这就是为什么有一个被接受的答案的原因... - Alex Ott
我刚刚给了一个例子,他可以用它来安装他想要安装的软件包。 - Abhishek Kumar
他已经通过pip安装了驱动程序 - 请参见问题的评论 - Alex Ott

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接