Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

Forty two.


devel / comp.lang.python / Re: tail

SubjectAuthor
o Re: tailAntoon Pardon

1
Re: tail

<mailman.237.1650798577.20749.python-list@python.org>

 copy mid

https://www.novabbs.com/devel/article-flat.php?id=18018&group=comp.lang.python#18018

 copy link   Newsgroups: comp.lang.python
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!not-for-mail
From: antoon.p...@vub.be (Antoon Pardon)
Newsgroups: comp.lang.python
Subject: Re: tail
Date: Sun, 24 Apr 2022 13:09:21 +0200
Lines: 24
Message-ID: <mailman.237.1650798577.20749.python-list@python.org>
References: <CABbU2U98YKdcnJkDPfzE3Pqso+6LL72usB8hrSBVR0WbhauRoQ@mail.gmail.com>
<CAPTjJmr3AiCyvxXt=-nqNLrJfyQHmG=pvSsM7nU_XxhSe94zgA@mail.gmail.com>
<25955416-d16e-2ac3-3fc9-d0dba80b61cd@vub.be>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: news.uni-berlin.de vyslHU//C87TU6CWNEAmEQTTWA/gVDvigY0ht0NLP8dg==
Return-Path: <Antoon.Pardon@vub.be>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=pass
reason="1024-bit key; unprotected key"
header.d=vub.be header.i=@vub.be header.b=rcAz0A9M; dkim-adsp=pass;
dkim-atps=neutral
X-Spam-Status: OK 0.023
X-Spam-Evidence: '*H*': 0.96; '*S*': 0.00; '2022': 0.05; 'sun,': 0.07;
'memory.': 0.09; 'antoon': 0.16; 'bottom?': 0.16; 'commons': 0.16;
'from:addr:antoon.pardon': 0.16; 'from:addr:vub.be': 0.16;
'from:name:antoon pardon': 0.16; 'iterate': 0.16; 'message-
id:@vub.be': 0.16; 'pardon': 0.16; 'received:40.107.21': 0.16;
'schreef': 0.16; 'streams': 0.16; 'wrote:': 0.16; 'to:addr:python-
list': 0.20; 'lines': 0.23; 'python,': 0.25; 'chris': 0.28;
'header:User-Agent:1': 0.30; 'split': 0.32; 'header:In-Reply-
To:1': 0.34; 'file': 0.38; 'read': 0.38; 'quite': 0.39; 'text':
0.39; 'done.': 0.40; 'method': 0.61; 'skip:r 20': 0.64;
'introducing': 0.64; 'entire': 0.67; '....': 0.76; 'backwards':
0.84; 'decode': 0.84; 'easy.': 0.84;
'received:eurprd01.prod.exchangelabs.com': 0.84; 'sulla': 0.84
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
b=ewfM0sp6LHwiIOusGGe/Ohjzi/7YXx/9r74werIVxtY/LzaMUwBdnm1JG8rna1BnHE4NWG5UGsGR2bORGf6I3TC+8y+Ms/HShPpAK+ZuRj62a9Z8Q1ilWyXYrIy1oXVhcEZ0DICzjHLZOnS//z6CTHDfVkNRXujbv7w2x7ytpVu8pyrhUIP8PPYfEv6rgC4zLpjSwHFw0OWur0PlHN8hFLaTJAF27gBMeEzOwj2ScMTSP2h9IoEfj2/0Ouiey5Wa8ghWfJQhMM73OZt7KGUlM20ZQJGVFTgXoRTjFpY/aYChOVc10F4Syy6TG3yBa6HK37j+Sj/RpLzaWDjUalnGRw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
s=arcselector9901;
h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
bh=PI7/94l4MEFIlEFrbNe6ECLjrndZSL4tj4jfQWwyoMM=;
b=RyaHTO6ejRUPBl+D6sts6/EolWYcVkt5jlQKcWJmduUu0+YujRDVl2pwn0e+tDfMlNj6jvelu1NY4OG44lMeccnrPfXWMJBGyUUlpxmPw2xXZSgkOyUfkGCxnrpMI/E4W7HbCorGVc77ZYS3Mt8xRmEmbB+/3k+ee7l0Pc0aeMGqOgEVMHdZanoRFUMwIbiPFTaZAM5KhdQaTfdlFDGCTQBn75/jwKdFLs+ovCrNqW4d/HrDea1gNogq+6LINIL5T6LPAleiR3cTeXcB90cRv7zgLq+DGTACHvF9rI1SKOQdG/fbXU+ORpoQ9VVKqDbEzqvkFUW0VJSj7YWAvlsLxA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
smtp.mailfrom=vub.be; dmarc=pass action=none header.from=vub.be; dkim=pass
header.d=vub.be; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vub.be; s=selector1;
h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
bh=PI7/94l4MEFIlEFrbNe6ECLjrndZSL4tj4jfQWwyoMM=;
b=rcAz0A9MYE7z4crpQhe2cpS4ggHZJvPKlEhVf4npjpR7Lt2kVeLLFgfox7DCaHSSc98vzwHaKpzTCYWkP+lVZ8swyic1uVidY6GG+B0OjLXUKumq3zysozXYTjCHOjLEOylqKnI532yvhp+a2P6elI+YPbG68nxeHfgACl7NSAw=
Authentication-Results: dkim=none (message not signed)
header.d=none;dmarc=none action=none header.from=vub.be;
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Content-Language: nl-BE
In-Reply-To: <CAPTjJmr3AiCyvxXt=-nqNLrJfyQHmG=pvSsM7nU_XxhSe94zgA@mail.gmail.com>
X-ClientProxiedBy: PR3PR09CA0016.eurprd09.prod.outlook.com
(2603:10a6:102:b7::21) To AM0PR01MB4147.eurprd01.prod.exchangelabs.com
(2603:10a6:208:6a::12)
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 53a05511-3b50-426d-73d8-08da25e2e91d
X-MS-TrafficTypeDiagnostic: VI1PR0101MB2208:EE_
X-Microsoft-Antispam-PRVS: <VI1PR0101MB22085713DF3FA9C30C5F2BA98FF99@VI1PR0101MB2208.eurprd01.prod.exchangelabs.com>
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: 6iscsHOmZPUf7qiqIh23F4NprhxdVzIsKFE6K01fIJdaFIuaMIvIktbWpViREW6iMwRSYUsrYFIFmuKyKXWMzklGJjwf0O5HymWPJ6yNEfTuqS1ggcADDQbTO0PwlGAOZroorRm+ndQq/Qy+JxMw1U325PDNRMxvvkk95jpV0r8TVjqA9CEvkgPiNAX1LIyBdfUnCWwPKp3tquYZ12qurfq9yzWv3K6gv9+ZcdMLFPme3ZjfdZbW6vQuHmmCAJhyGU4v7GyDf5erZb/i4RBek26qo/hTQFRkJ5oZxFqIkKIgLN3Vb53MBz8QLO+cD/nqos+6nrjEE0gK/qgSWj8BoFGvTSx/4jzt0gQHMPcWYZcYJ/Eqy8zCJkLnrQG1nidm2rT82oP+p9rNCrHIwihNSU/IsQTIUrWdnfAeo4a8xpQ21WcTecTYRbCzJgNJq+WT2erCCwc7rl1KMllRRaoHXfGq/HEdV9xi/D34LYXETaa8tdjon5fthgo1ZGi/aC+EWah9LqNYAxyJofD6jogVLznTt80Vzl+DY/oeoFvcbHplN0XBpJhmNobtgG7Xy41U5YSL43wiboSTriDbwfES9q0Jxv0UZ+DF6kjY+dzPXILxw+FYyEsQfMp+vjN7lmpOCa3Ko0V3UqnojBm0jcFhHSftmjWUseHOu2jDK2frr7VDEcikqjeJGWRk+LleHegY
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
IPV:NLI; SFV:NSPM; H:AM0PR01MB4147.eurprd01.prod.exchangelabs.com; PTR:;
CAT:NONE;
SFS:(13230001)(4636009)(366004)(31686004)(66946007)(66556008)(66476007)(2616005)(7116003)(44832011)(8676002)(5660300002)(508600001)(6486002)(6916009)(2906002)(36756003)(786003)(316002)(3480700007)(186003)(8936002)(86362001)(33964004)(83380400001)(31696002)(6512007)(6506007)(52116002)(6666004)(38100700002)(43740500002);
DIR:OUT; SFP:1101;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2
X-MS-Exchange-AntiSpam-MessageData-0: ZAxwRfBA3gdGifxgo4sfN/XOohh216255hH9/yEZEfbes
Cx0dg8b8YVmsXHCHNVtF72kdIrQqmwXKW4E7y8TCdsGEt
0FTapdwTmcG24hZEmGbYRGpK3P5UvgJ9uuZ/HLOIsyahA
jOX6le/KNc+MYYAsrAsiUtVBHMAWPUajxOVZJDRUtnZgW
Y0kEd4X/wrdcGXXXnEJ2IWfZlUxZz3RnHpHfx5YJQo5TI
Tei/j+nJoHPZhYZjwmP+vfnAtTAwaTsGibuY9tGsg3i4n
izgbnbBcSileN7m0dZ47O1fT3R2G5AdA2VMGYNVbAj/3i
SsLwqOMfYUAosrPJS6cl90Pg+nvfxFW1rqwmmsptuAdte
EvbxJr8eKbZs9ca4nc1sDwQnKVPdTZ7HuHaLePluyRBcU
Rqo6v8UE8HX1O/G8xtVysoxyIO1x4l+eX7AVgFwYBtzzZ
DvSjL39IfCvs7ysG3v9Iy3ExxoBF+EtXhoaNpgJ3UtKty
GTfk/iZ1gwU/FTM9zzfu/fQCA478RY6AhqT36RCyh/sYT
CpCvM2eBwtRYOfPsxRCyQEf75YpnNxFsfSyardX+6F3fC
5quaA10UkI7pi2MflovOXYgR0517ofTTtvdN7dEeuAFxz
4wrAHiUnosR39fgJ7UrRb8C9PsGj2ZSC2gBMO5hQBn2ej
82HKZzLnyLjMqlyoG2faUEZlJGlhppoVSToaHoRxp+xPW
vjUwSfmXzGrOdmHAeM0OPf9YcysEvzD8U20Ru6RoiwFPn
TMMeEnYoc0UWZtGbxwCidkGlptOH8/K7u+OgpNpESxaIe
2ehPFry4FSWB+TQcJcUVe0RUBErMML7s39HveiSM9Z9vt
ZuqLcYRoenwcu6gL+B6xF7v/U1LLQVOsPPcP7hspSWTte
kl3yJg92DMPZsOQp+2mRCzvPthFFOiNs8EhKMaEg2HQoe
EPoKUELRrGRYaKHRi4I/dQk/vyB08wQsUXcG+lZUkb7US
9RS9VL05Sbh+EzTJ8J6tLHPoxGj1yXKO7s2Q6SoqmUj4w
z5/IHFqNSjwL2adaLGom/J3lLA1/eQIb/dZovgqGsAC6a
Dv7rYNgvKTjdHmLC6w3tSI9l3kr57CcAtSz8mSgBDc5og
IZCHtaG+uy+DL2Il0M8Z8cow70ERqoe8TWiseV5koC3ZY
O5S1CmXhJagIhjK0jlKeeS0UX4WgQbo6Wku3+hAWdsP5t
DpuHXI/gsObLHdB8b9cfNveQSbCK9Okjqr338Vd8M0JT1
jd3PkKjQeMhWS/0I4HQGJP6LdQjp4GYIigPXXmy4iCQf4
cVasVinwWX5tLkAZ5AxZP/zZHZ3AQLZrAfDOqP72FXP2y
/5wH30IEJU0x8ECqF9FAe1QXpFL8CE7dUO5R34U7ZuOYW
SfZitlNVXGSMxKX5xIVdOfIJ1iUOUNUmC5+0chBWlDWIk
llQmSvivRtOCWamgqSAsyYqMZLeHB25TcitKOkOt5pYcn
2LJwC08H23BPgHMHt4xjB+ldfr4I23EJnfXIUEmwB8OVE
X80GHJbCkSUhONGWgijzbBWQl522W5hwjoMsnTXc296Hn
UJnn1pUZRjVszPKwbNXgvJMBb36V/m2KsWVWUwYAXYwlV
kOuL6m/g6olCcXpErc8DoziIyIO33J35f7wLzp4sbpMSs
s801BnI3NmLIn0Ii2Fves1I1jhXgXwY4/r/3f1hdOHOhs
vDsqjIDpQDDPCNvDTjv/3/2cp3IAn6OmpXsNVc3vMwEk/
vlP3lS5qSXeCrBgmJLpG9lAb4pbywJevHGavg4wtueKAX
X-MS-Exchange-AntiSpam-MessageData-1: wilWzBnKaPIk+vS6OG1bmLdPp/n0AnRaY0E=
X-OriginatorOrg: vub.be
X-MS-Exchange-CrossTenant-Network-Message-Id: 53a05511-3b50-426d-73d8-08da25e2e91d
X-MS-Exchange-CrossTenant-AuthSource: AM0PR01MB4147.eurprd01.prod.exchangelabs.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Apr 2022 11:09:33.1610 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 695b7ca8-2da8-4545-a2da-42d03784e585
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: SXONvRNfZV9ONy8SBy0qyZcjHkEzF+EiTYqtHPsoY0LScMSmDSuWux/q/RHxY/wnPSv6PUGrTdiGWP0gB2hoHw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0101MB2208
X-Content-Filtered-By: Mailman/MimeDel 2.1.39
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <25955416-d16e-2ac3-3fc9-d0dba80b61cd@vub.be>
X-Mailman-Original-References: <CABbU2U98YKdcnJkDPfzE3Pqso+6LL72usB8hrSBVR0WbhauRoQ@mail.gmail.com>
<CAPTjJmr3AiCyvxXt=-nqNLrJfyQHmG=pvSsM7nU_XxhSe94zgA@mail.gmail.com>
 by: Antoon Pardon - Sun, 24 Apr 2022 11:09 UTC

Op 23/04/2022 om 20:57 schreef Chris Angelico:
> On Sun, 24 Apr 2022 at 04:37, Marco Sulla<Marco.Sulla.Python@gmail.com> wrote:
>> What about introducing a method for text streams that reads the lines
>> from the bottom? Java has also a ReversedLinesFileReader with Apache
>> Commons IO.
>
> 1) Read the entire file and decode bytes to text
> 2) Split into lines
> 3) Iterate backwards over the lines
>
> Tada! Done. And in Python, quite easy. The downside, of course, is
> that you have to store the entire file in memory.

Why not just do:

tail = collections.deque(text_stream, maxlen = nr_of_lines)
tail.reverse()
....

--
Antoon Pardon

1
server_pubkey.txt

rocksolid light 0.9.7
clearnet tor