[Python-ideas] Possible PEP 380 tweak
rrr at ronadam.com
Sun Oct 31 08:26:11 CET 2010
On 10/30/2010 07:35 PM, Nick Coghlan wrote:
> On Sun, Oct 31, 2010 at 2:54 AM, Ron Adam<rrr at ronadam.com> wrote:
>>> However, I think sentinel values are likely a better way to handle
>>> this in a pure PEP 380 context.
>> Sentinel values aren't always better because they require a extra comparison
>> on each item.
> Yep, Guido's example made me realise I was wrong on that front.
BTW: A sentinal could still work, and the 'except <exception>' could be
The finish function isn't needed in this one.
# Tallies numbers until sentinel is passed in
count = tally = 0
value = yield
if value is end_tally:
count += 1
tally += value
yield count, tally
yield from gtally(end_avg)
yield tally / count
g = gaverage(None)
for x in range(100):
Using sentinels not always wrong either. The data may have natural sentinel
values in it. In those cases, value testing is what you want.
I would like to be able to do it both ways myself. :-)
More information about the Python-ideas