Python 2.6 ImportError:没有名为argparse的模块

时间:2014-01-26 03:44:51

标签: python git python-2.6

我正在尝试从Red Hat Enterprise Linux Server 6.5版运行git-cola并收到:

Traceback (most recent call last):
File "....../bin/git-cola", line 24, in <module>
from argparse import ArgumentParser
ImportError: No module named argparse

我想我已经安装了所有必需的软件包:

* git-1.7.1-3.el6_4.1.x86_64
* python-2.6.6-51.el6.x86_64
* PyQt4.x86_64 0:4.6.2-9.el6
* /usr/lib/python2.6/site-packages/argparse-1.2.1-py2.6.egg

我在其他博客中读到Python 2.6可能存在问题,可能需要迁移到2.7。

附加信息 - @iljau注意到argparse位于32位lib中,而python的其余部分位于64位。我原以为:

easy_install argparse

会对此进行排序并安装64位版本。

其他问题:有没有人知道如何安装64位版本的argparse。我在搜索互联网时并不明白。我会继续寻找。

我通过下载tar文件和

安装了argparse
python setup.py install

但是,它仍然将它安装在lib而不是lib64路径中 - 它看起来像64位安装。所以在正确引用argparse时必须有其他问题。我不知道Python足以调试它,但我怀疑git-cola需要一些Python 2.6的工作。

4 个答案:

答案 0 :(得分:5)

作为一个简单的解决方案,将argparse.pyhttps://code.google.com/p/argparse/source/browse/argparse.py复制到您的项目文件夹。


事实上,对于Python 2.6 argparse需要单独安装。

来自:https://pypi.python.org/pypi/argparse

  

从Python&gt; = 2.7 .. 开始,argparse模块在Python标准库中维护。对于仍需要支持Python的用户&lt; 2.7 .. 它也作为一个单独的包提供, .. 也支持旧的Python版本。

但即使安装argparse之后,它也可能因某些神秘原因拒绝工作。

可以在问题"ImportError: No module named argparse"的答案和评论中找到其他调试提示。

答案 1 :(得分:5)

我在RHEL6上遇到了同样的问题,解决方法是安装软件包 python-argparse.noarch

yum install python-argparse.noarch
然后一切都很好。

答案 2 :(得分:1)

新的软件包安装在路径中:

/usr/lib/python2.6/site-packages

使用sudo安装它们会使新安装的目录和文件全部无法读取。一个递归的chmod打开所有已安装的路径,可以解决所有问题:

chmod -R u+rwX,go+rX,go-w <new directories and files>

答案 3 :(得分:0)

看起来缺少argparse。

yum install python-argparse