random832 <random...@fastmail.us> added the comment:
That documentation isn't specific to StringIO, and in any case, the limitation in question isn't documented. The actual implementation is at https://github.com/python/cpython/blob/HEAD/Modules/_io/stringio.c#L484 But if examples would help, they're simple to come up with: >>> f = io.StringIO('t\xe9st') >>> f.seek(-1, io.SEEK_END) Traceback (most recent call last): File "<stdin>", line 1, in <module> OSError: Can't do nonzero cur-relative seeks >>> f.seek(2, io.SEEK_CUR) Traceback (most recent call last): File "<stdin>", line 1, in <module> OSError: Can't do nonzero cur-relative seeks # demonstration that SEEK_SET works treating all characters as one unit >>> f.seek(2, io.SEEK_SET) 2 >>> f.read() 'st' As far as I know this is the case in all currently maintained versions of Python 3, since the C-based unicode StringIO implementation was added in 2008. ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue39365> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com