Note that it's already possible to iterate on file objects using ``for
line in file: ...`` without calling :meth:`!file.readlines`.
- .. method:: seek(offset, whence=SEEK_SET, /)
+ .. method:: seek(offset, whence=os.SEEK_SET, /)
- Change the stream position to the given byte *offset*. *offset* is
- interpreted relative to the position indicated by *whence*. The default
- value for *whence* is :data:`!SEEK_SET`. Values for *whence* are:
+ Change the stream position to the given byte *offset*,
+ interpreted relative to the position indicated by *whence*,
+ and return the new absolute position.
+ Values for *whence* are:
- * :data:`!SEEK_SET` or ``0`` -- start of the stream (the default);
+ * :data:`os.SEEK_SET` or ``0`` -- start of the stream (the default);
*offset* should be zero or positive
- * :data:`!SEEK_CUR` or ``1`` -- current stream position; *offset* may
- be negative
- * :data:`!SEEK_END` or ``2`` -- end of the stream; *offset* is usually
- negative
-
- Return the new absolute position.
+ * :data:`os.SEEK_CUR` or ``1`` -- current stream position;
+ *offset* may be negative
+ * :data:`os.SEEK_END` or ``2`` -- end of the stream;
+ *offset* is usually negative
.. versionadded:: 3.1
The :data:`!SEEK_*` constants.
Any other argument combinations are invalid,
and may raise exceptions.
+ .. seealso::
+
+ :data:`os.SEEK_SET`, :data:`os.SEEK_CUR`, and :data:`os.SEEK_END`.
+
.. method:: tell()
Return the stream position as an opaque number.
to restore a previous stream position.
-
.. class:: StringIO(initial_value='', newline='\n')
A text stream using an in-memory text buffer. It inherits
"\n"
"Change the stream position to the given byte offset.\n"
"\n"
+" offset\n"
+" The stream position, relative to \'whence\'.\n"
+" whence\n"
+" The relative position to seek from.\n"
+"\n"
"The offset is interpreted relative to the position indicated by whence.\n"
"Values for whence are:\n"
"\n"
{
return _io__RawIOBase_readall_impl(self);
}
-/*[clinic end generated code: output=ec741e0961671a86 input=a9049054013a1b77]*/
+/*[clinic end generated code: output=d96f5bfd72e6eafb input=a9049054013a1b77]*/
_io._IOBase.seek
cls: defining_class
offset: int(unused=True)
+ The stream position, relative to 'whence'.
whence: int(unused=True, c_default='0') = os.SEEK_SET
+ The relative position to seek from.
/
Change the stream position to the given byte offset.
static PyObject *
_io__IOBase_seek_impl(PyObject *self, PyTypeObject *cls,
int Py_UNUSED(offset), int Py_UNUSED(whence))
-/*[clinic end generated code: output=8bd74ea6538ded53 input=8d4e6adcd08292f2]*/
+/*[clinic end generated code: output=8bd74ea6538ded53 input=74211232b363363e]*/
{
_PyIO_State *state = get_io_state_by_cls(cls);
return iobase_unsupported(state, "seek");