1

我正在使用 Ubuntu 和 virtualenv,并且在尝试使用 Fabric 创建部署脚本时遇到了这个反复出现的问题。Fabric 依赖于 paramiko,而 paramiko 又依赖于 PyCrypto。

每次我尝试直接使用 Fabric 或 PyCrypto 时,都会出现以下错误:

ImportError: cannot import name Random

我尝试使用 pip install -U PyCrypto 重新安装。我还尝试使用 Aptitude 安装 python-crypto 和 python-crypto-dbg 软件包,但无济于事。我仍然得到同样的错误。有人有任何想法可以帮助我解决这个问题吗?提前致谢!

4

2 回答 2

0

运行 Fabric 的目录中可能存在文件名冲突。你的项目中有一个文件Crypto.py吗?

你可以让 Crypto.Random 从你的项目目录之外导入吗?(但仍然使用你的 virtualenv。Ipython 在这里有很大的帮助。)

于 2011-07-29T16:42:20.293 回答
0

过去我在使用 Ubuntu 时遇到过同样的麻烦。我不再有可用的 Ubuntu 安装,但在我的旧 10.04 机器上,Crypto 目录中的文件 Random 丢失了。确保它存在,如果不存在,那就是问题所在。

于 2012-01-03T10:42:39.087 回答