我使用plivo
安装了一个python包sudo pip install plivo
。
和解释器我用一些代码测试它,如:
>>> import plivo
>>> p = plivo.RestAPI('xxx', 'yyy')
python解释器中的一切正常。
完全相同的代码无法在python脚本中运行 test_plivio.py
给出错误:AttributeError: 'module' object has no attribute 'RestAPI'
然后我查看dir()
在翻译中
>>> dir(plivo)
['Account', 'Application', 'Call', 'Carrier', 'Conference', 'ConferenceMember', 'EndPoint', 'Message', 'Number', 'PLIVO_VERSION', 'PlivoError', 'PlivoResponse', 'Pricing', 'Recording', 'RestAPI', 'SubAccount', 'XML', '__builtins__', '__doc__', '__file__', '__name__', '__package__', 'base64', 'hmac', 'json', 'requests', 'sha1', 'validate_signature']
RestAPI
就在那里。
而在 test_plivo.py dir(plivo)就像:
['__builtins__', '__doc__', '__file__', '__name__', '__package__', 'main']
脚本中dir(plivo)
显然缺少RestAPI
其他功能。
为什么这种行为以及如何解决?
答案 0 :(得分:2)
您正在导入其他模块;在您的路径上,您有一个不同的 plivo.py
(或plivo.pyc
缓存字节码)文件。
打印__file__
属性以查看导入的内容:
print plivo.__file__
并重命名或将其移动到其他地方。