Python readline() from a string?

后端 未结 5 1406
予麋鹿
予麋鹿 2020-12-23 20:21

In python, is there a built-in way to do a readline() on string? I have a large chunk of data and want to strip off just the first couple lines w/o doing split() on the who

5条回答
  •  攒了一身酷
    2020-12-23 20:59

    Python 2

    You can use StringIO:

    >>> msg = "Bob Smith\nJane Doe\nJane,\nPlease order more widgets\nThanks,\nBob\n"
    >>> msg
    'Bob Smith\nJane Doe\nJane,\nPlease order more widgets\nThanks,\nBob\n'
    >>> import StringIO
    >>> buf = StringIO.StringIO(msg)
    >>> buf.readline()
    'Bob Smith\n'
    >>> buf.readline()
    'Jane Doe\n'
    

    Be sure to use cStringIO if performance is important.

    Python 3

    You can use io.StringIO:

    >>> import io
    >>> buf = io.StringIO(msg)
    >>> buf.readline()
    'Bob Smith\n'
    >>> buf.readline()
    'Jane Doe\n'
    >>> len(buf.read())
    44
    

提交回复
热议问题