8

CentOSとUbuntuにredis-pyをインストールしました。どちらの場合も、アクセスしようとすると同じエラーが発生します。

redis-py AttributeError: 'module' object has no attribute

ソースと同じディレクトリでPythonプロンプトを使用すると、これは機能します。

>>> import redis
>>> r = redis.Redis(host='localhost', port=6379, db=0)

しかし、ディレクトリを変更するとエラーが発生します。

>>> import redis
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "redis.py", line 4, in <module>
    print redis.__version__
AttributeError: 'module' object has no attribute '__version__'

スクリプトを試してみると、.py常にエラーが発生します。私が間違っていること、そしてそれを修正する方法についての考え。おそらく初心者のPythonのこと...

4

2 に答える 2

28

作業中のモジュールに名前を付けておりredis.py、Pythonは実際のredisモジュールの代わりにそれをインポートしています。これを行わないでください。またはsys.path、現在の作業ディレクトリが検索するディレクトリのリストの最初ではなく最後になるように変更してください。

于 2013-03-26T23:26:13.053 に答える
0

トルネードでこのエラーが発生しました。これは、Python 2.7にredisをインストールし、python3にもインストールするためです。python2.7からredisをアンインストールし、python3にre_installして、問題を解決します。

于 2015-08-08T13:59:43.433 に答える