相同的解释器(?),Spyder中的不同包版本

时间:2015-06-16 21:37:29

标签: python pip python-requests python-idle spyder

我得到了这个import error,因为requests包已过期,因此answer表示会发生这种情况。我使用pip更新了包,但仍然遇到了同样的错误。所以我尝试了from requests.utils import to_native_string,令我惊讶的是,在命令提示符shell或IDLE中都可以正常工作,但在Spyder中抛出错误。我检查了requests包的版本:

import requests
print(requests.__version__)

Spyder中的版本号('1.2.3')确实与IDLE或cmd shell('2.7.0')中的版本号不同。我无法解释为什么会出现这种情况,因为Spyder在C:\Python27\python.exe指向同一个解释器,如果我检查正在使用的python版本:

import sys
print(sys.version)

我到处都得到相同的结果:'2.7.5 (default, May 15 2013, 22:44:16) [MSC v.1500 64 bit (AMD64)]'

1 个答案:

答案 0 :(得分:0)

我会查看两个不同的可能问题:

1)确保删除导入请求的模块的.pyc文件 - 我相信Spyder中有一个设置可以确保每次调用UMD时都会重新加载解释器吗?

2)即使指定了解释器,也要确保指定了Spyder正在使用的站点包。

安装Spyder时,它可能会创建一个虚拟环境,在安装时复制系统站点包的内容。虽然您可能正在更新系统软件包,但Spyder正在查看的虚拟环境是否未更新?