Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #106223
| Path | csiph.com!xmission!news.alt.net!feeder.erje.net!2.us.feeder.erje.net!eternal-september.org!feeder.eternal-september.org!mx02.eternal-september.org!.POSTED!not-for-mail |
|---|---|
| From | Marko Rauhamaa <marko@pacujo.net> |
| Newsgroups | comp.lang.python |
| Subject | Re: Strange range |
| Date | Fri, 01 Apr 2016 17:12:49 +0300 |
| Organization | A noiseless patient Spider |
| Lines | 44 |
| Message-ID | <87twjlju3i.fsf@elektro.pacujo.net> (permalink) |
| References | <87y48xjwqq.fsf@elektro.pacujo.net> <56fe76f2$0$22141$c3e8da3$5496439d@news.astraweb.com> |
| Mime-Version | 1.0 |
| Content-Type | text/plain |
| Injection-Info | mx02.eternal-september.org; posting-host="b7cb1518d23ec19d482dcc9c31d30fdd"; logging-data="13236"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18cMpOwSowSoNSQeBshbi7e" |
| User-Agent | Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
| Cancel-Lock | sha1:JFPpv5A5tx1Pvxv2ju7SPF0sOPE= sha1:OM+Vsc2fpkPkr9ToX0LQyVIFU8g= |
| Xref | csiph.com comp.lang.python:106223 |
Show key headers only | View raw
Steven D'Aprano <steve@pearwood.info>:
> On Sat, 2 Apr 2016 12:15 am, Marko Rauhamaa wrote:
>> Note to self: range(10) is an iterator factory, not an iterator.
>
> Incorrect. range is a lazy sequence.
Incorrect. You and I agree.
> You can think of range as equivalent to something close to this:
>
> class Range(object):
> def __init__(self, start, end, step=1):
> self.start = start
> self.end = end
> self.step = step
>
> def __getitem__(self, index):
> value = self.start + (index-1)*self.step
> if value < self.end:
> return value
> raise IndexError
>
> def __iter__(self):
> try:
> index = 0
> while True:
> yield self[index]
> index += 1
> except IndexError:
> return
Yes, I realize it now. I had thought it was:
def range(start, end=None, step=1):
if end is None:
start, end = 0, start
i = start
while step * (end - i) > 0:
yield i
i += step
Marko
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Strange range Marko Rauhamaa <marko@pacujo.net> - 2016-04-01 16:15 +0300
Re: Strange range Chris Angelico <rosuav@gmail.com> - 2016-04-02 00:24 +1100
Re: Strange range Steven D'Aprano <steve@pearwood.info> - 2016-04-02 00:26 +1100
Re: Strange range Marko Rauhamaa <marko@pacujo.net> - 2016-04-01 17:12 +0300
Re: Strange range Random832 <random832@fastmail.com> - 2016-04-01 10:39 -0400
Re: Strange range Fabien <fabien.maussion@gmail.com> - 2016-04-01 16:16 +0200
Re: Strange range Jussi Piitulainen <jussi.piitulainen@helsinki.fi> - 2016-04-01 17:28 +0300
Re: Strange range Chris Angelico <rosuav@gmail.com> - 2016-04-02 01:31 +1100
Re: Strange range Marko Rauhamaa <marko@pacujo.net> - 2016-04-01 17:34 +0300
Re: Strange range Jussi Piitulainen <jussi.piitulainen@helsinki.fi> - 2016-04-01 17:44 +0300
Re: Strange range Chris Angelico <rosuav@gmail.com> - 2016-04-02 01:45 +1100
Re: Strange range Marko Rauhamaa <marko@pacujo.net> - 2016-04-01 18:43 +0300
Re: Strange range Erik <python@lucidity.plus.com> - 2016-04-01 20:58 +0100
Re: Strange range Marko Rauhamaa <marko@pacujo.net> - 2016-04-01 23:14 +0300
Re: Strange range Rob Gaddi <rgaddi@highlandtechnology.invalid> - 2016-04-01 20:21 +0000
Re: Strange range Marko Rauhamaa <marko@pacujo.net> - 2016-04-01 23:44 +0300
Re: Strange range Steven D'Aprano <steve@pearwood.info> - 2016-04-02 21:09 +1100
Re: Strange range Marko Rauhamaa <marko@pacujo.net> - 2016-04-02 13:48 +0300
Re: Strange range Ned Batchelder <ned@nedbatchelder.com> - 2016-04-02 12:47 -0700
Re: Strange range Marko Rauhamaa <marko@pacujo.net> - 2016-04-02 23:44 +0300
Re: Strange range Chris Angelico <rosuav@gmail.com> - 2016-04-03 07:05 +1000
Re: Strange range Marko Rauhamaa <marko@pacujo.net> - 2016-04-03 00:40 +0300
Re: Strange range Ned Batchelder <ned@nedbatchelder.com> - 2016-04-02 14:50 -0700
Re: Strange range Stephen Hansen <me+python@ixokai.io> - 2016-04-02 23:43 -0700
Re: Strange range Marko Rauhamaa <marko@pacujo.net> - 2016-04-03 09:58 +0300
Re: Strange range Chris Angelico <rosuav@gmail.com> - 2016-04-03 17:10 +1000
Re: Strange range Ethan Furman <ethan@stoneleaf.us> - 2016-04-03 09:28 -0700
Re: Strange range Mark Lawrence <breamoreboy@yahoo.co.uk> - 2016-04-04 13:21 +0100
Re: Strange range Chris Angelico <rosuav@gmail.com> - 2016-04-03 17:08 +1000
Re: Strange range Steven D'Aprano <steve@pearwood.info> - 2016-04-03 14:43 +1000
Re: Strange range Random832 <random832@fastmail.com> - 2016-04-03 01:20 -0400
Re: Strange range Steven D'Aprano <steve@pearwood.info> - 2016-04-03 15:28 +1000
Re: Strange range Marko Rauhamaa <marko@pacujo.net> - 2016-04-01 17:32 +0300
Re: Strange range Random832 <random832@fastmail.com> - 2016-04-01 10:42 -0400
Re: Strange range Chris Angelico <rosuav@gmail.com> - 2016-04-02 01:50 +1100
Re: Strange range Ian Kelly <ian.g.kelly@gmail.com> - 2016-04-01 08:52 -0600
csiph-web