python3中的StringIO

问题:

我使用python 3.2.1,我不能导入StringIO模块。我用
 io.StringIO,它的作品,但我不能使用它与numpygenfromtxt像这样:

x="1 3\n 4.5 8"        
numpy.genfromtxt(io.StringIO(x))

我收到以下错误:

TypeError: Can't convert 'bytes' object to str implicitly  

当我写import StringIO它说没有这样的模块。

回答:

当我写入导入StringIO它说没有这样的模块。

What’s New In Python 3.0

StringIOcStringIO模块已经消失。而是分别导入io模块,并使用io.StringIOio.BytesIO分别显示文本和数据。

一个可能有用的方法来修复一些Python 2代码也可以在Python 3(注意事项)中使用:

try:
    from StringIO import StringIO
except ImportError:
    from io import StringIO

 Note: This example may be tangential to the main issue of the question and is included only as something to consider when generically addressing the missing StringIO module.对于更直接的解决方案,消息TypeError: Can't convert 'bytes' object to str implicitly,请参阅this answer

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: StringIO in python3

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

2 + 7 =