StringIO in Python3 StringIO in Python3 python python

StringIO in Python3

when i write import StringIO it says there is no such module.

From What’s New In Python 3.0:

The StringIO and cStringIO modules are gone. Instead, import the iomodule and use io.StringIO or io.BytesIO for text and datarespectively.


A possibly useful method of fixing some Python 2 code to also work in Python 3 (caveat emptor):

try:    from StringIO import StringIO ## for Python 2except ImportError:    from io import StringIO ## for Python 3

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. For a more direct solution the message TypeError: Can't convert 'bytes' object to str implicitly, see this answer.

In my case I have used:

from io import StringIO

On Python 3 numpy.genfromtxt expects a bytes stream. Use the following: