python 3.x ImportError:没有名为' cStringIO'

时间:2015-01-28 19:05:37

标签: python-3.x stringio cstringio

如何解决Python 3.x下的ImportError: No module named 'cStringIO'

3 个答案:

答案 0 :(得分:70)

来自Python 3.0更新日志;

  

StringIO和cStringIO模块消失了。相反,导入io模块并分别使用io.StringIO或io.BytesIO作为文本和数据。

从Python 3电子邮件文档中可以看出应该使用io.StringIO

from io import StringIO
from email.generator import Generator
fp = StringIO()
g = Generator(fp, mangle_from_=True, maxheaderlen=60)
g.flatten(msg)
text = fp.getvalue()

参考:https://docs.python.org/3.4/library/io.html

答案 1 :(得分:6)

我遇到了同样的问题,因为我的文件名为 email.py 。我重命名了文件,问题就消失了。

答案 2 :(得分:0)

我遇到了这个问题,因为我的目录名为 email。我将目录重命名为 emails,问题就消失了。