pycrypto错误.... ImportError:无法导入名称计数器

时间:2012-06-22 09:18:50

标签: python counter

我正在尝试使用pycrypto ++在python中设计AES CTR加密/解密程序。但每次我在代码下运行时都会:

decryptor = AES.new(key, AES.MODE_CTR, counter=Counter.new(64, prefix=nonce))

我收到以下错误:

Traceback (most recent call last):
  File "aes-ctr.py", line 3, in <module>
  from collections import Counter
ImportError: cannot import name Counter

nonce是由我给出的。请帮助我。我的python版本是2.7.3

1 个答案:

答案 0 :(得分:4)

我可以想到可能导致这种情况的两件事。

要么你创建了一个名为“collections.py”的文件,它就隐藏了同名的库模块。如果是这样,请将其重命名。

如果没有,你会以某种方式弄乱你的python版本。 Counter肯定应该在python 2.7.3中。尝试重新安装python并仔细检查您实际运行的版本(例如,在程序中的某处打印出sys.version_info)。

要诊断问题,请尝试import collectionsprint collections.__file__。它应该在python2.7目录中。打开文件并搜索class Counter