Yosemite ins后出现Python configparser错误

2024-06-13 08:18:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经升级到了优胜美地,这似乎破坏了我的python模块。在

python --version==Python 2.7.6

然后从Python shell:

>>> import pyrax
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Library/Python/2.7/site-packages/pyrax/__init__.py", line 38, in <module>
    import six.moves.configparser as ConfigParser
ImportError: No module named configparser

所以它抱怨configparser。在

^{pr2}$

但它就在那里。经过一番阅读之后,在pythonversion3中,ConfigParser已经被重命名为ConfigParser。不过,我运行的是2.7。在

---编辑----

更多信息:
使用针对Python的自制程序
我试过重新安装pyrax

有什么想法吗?在


Tags: 模块inimportmostversionlineshellcall
2条回答

我也遇到了同样的问题,花了几个小时进行调查。
我了解到,默认的pythonforosx10.10包含一个过时的six包。在

我是这样修复的:

  1. 从homebrew安装python软件包:

    brew install python
    

    确保自制python是您的默认系统版本。检查brew doctor和默认值$PATH

    ^{pr2}$

    应该说“你的系统准备好了。”如果没有,你需要先修复它。我们需要使用自制的python,而不是OS X的python:

    which python
    

    应该输出并指向“/usr/local/bin/python”

    如果没有,请检查您的$PATH-它应该先输出“/usr/local/bin”,然后再输出“/usr/bin”。如果没有,请在.bash_profile和/或.zshrc中更新它。

  2. 卸载所有python包:

    pip freeze | grep -v "^-e" | xargs pip uninstall -y
    
  3. 根据需要重新安装所有python包:

    pip install -r requirements.txt
    

毕竟,它应该是有效的。在

只要把旧的六个移到一边,然后通过pip重新安装。。。在

mkdir ~/six-old-library/
mkdir ~/six-old-system-library/
sudo mv /Library/Python/2.7/site-packages/six* ~/six-old-library/
sudo mv /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six* ~/six-old-system-library/
sudo pip install six

相关问题 更多 >