[issue36111] Negative `offset` values are no longer acceptable with implementation of `seek` with python3; should be per POSIX
Enji Cooper
report at bugs.python.org
Mon Feb 25 17:12:02 EST 2019
New submission from Enji Cooper <yaneurabeya at gmail.com>:
I tried using os.SEEK_END in a technical interview, but unfortunately, that didn't work with python 3.x:
pinklady:cpython ngie$ python3
Python 3.7.2 (default, Feb 12 2019, 08:15:36)
[Clang 10.0.0 (clang-1000.11.45.5)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> fp = open("configure"); fp.seek(-100, os.SEEK_END)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
io.UnsupportedOperation: can't do nonzero end-relative seeks
It does however work with 2.x, which is aligned with the POSIX spec implementation, as shown below:
pinklady:cpython ngie$ python
Python 2.7.15 (default, Oct 2 2018, 11:47:18)
[GCC 4.2.1 Compatible Apple LLVM 10.0.0 (clang-1000.11.45.2)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> fp = open("configure"); fp.seek(-100, os.SEEK_END)
>>> fp.tell()
501076
>>> os.stat("configure").st_size
501176
>>>
----------
components: IO
messages: 336564
nosy: yaneurabeya
priority: normal
severity: normal
status: open
title: Negative `offset` values are no longer acceptable with implementation of `seek` with python3; should be per POSIX
_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue36111>
_______________________________________
More information about the Python-bugs-list
mailing list