Mimick tac with python.

Terry Reedy tjreedy at udel.edu
Sat Jan 30 04:38:54 EST 2016


On 1/30/2016 1:03 AM, Christian Gollwitzer wrote:
> Am 30.01.16 um 05:58 schrieb Random832:
>> On Fri, Jan 29, 2016, at 23:46, Hongyi Zhao wrote:
>>> awk '{a[NR]=$0} END {while (NR) print a[NR--]}' input_file
>>> perl -e 'print reverse<>' input_file
>>
>> Well, both of those read the whole file into memory - tac is sometimes
>> smarter than that, but that makes for a more complex program.
>
> Now I'm curious. How is it possible to output the first line as last
> again if not by remembering it from the every beginning? How could tac
> be implemented other than sucking up everything into memory?

One could read the file by lines and make a list of start-of-line 
positions.  Reverse the list. Read each line.  Details omitted.

-- 
Terry Jan Reedy




More information about the Python-list mailing list