Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #42429
| References | <8e43bc87-e822-4bb3-b9ef-ccd489da8bf3@googlegroups.com> <mailman.4010.1364715292.2939.python-list@python.org> <kjac1p$qci$1@dont-email.me> |
|---|---|
| Date | 2013-04-01 09:28 +1100 |
| Subject | Re: Why does 1**2**3**4**5 raise a MemoryError? |
| From | Chris Angelico <rosuav@gmail.com> |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.4038.1364768905.2939.python-list@python.org> (permalink) |
On Mon, Apr 1, 2013 at 9:06 AM, Alex <foo@email.invalid> wrote: > Dave Angel wrote: > >> On 03/31/2013 02:56 AM, morphex wrote: >> > > > > 1**2 >> > 1 >> > > > > 1**2**3 >> > 1 >> > > > > 1**2**3**4 >> > 1L >> > > > > 1**2**3**4**5 >> > Traceback (most recent call last): >> > File "<stdin>", line 1, in <module> >> > MemoryError >> > > > > >> > >> > Does anyone know why this raises a MemoryError? Doesn't make sense >> > to me. >> >> Perhaps you didn't realize that the expression will be done from >> right to left. > > Really? > > The Python 3 documentation > (http://docs.python.org/3/reference/expressions.html) says in section > 6.14 (Evaluation order) that "Python evaluates expressions from left to > right" (an exception being when evaluating assignments, in which case > the RHS of the assignment is calculated first, in left-to-right order). > > Section 6.4 discusses the power operator specifically and does not > contradict 6.14 except that the power operator uses right-to-left > evaluation in the presence of unparenthesized unary operators. http://docs.python.org/3/reference/expressions.html#operator-precedence Opening paragraph, "... exponentiation, which groups from right to left". It follows the obvious expectation from mathematics. (The OP is using Python 2, but the same applies.) ChrisA
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Why does 1**2**3**4**5 raise a MemoryError? morphex <morphex@gmail.com> - 2013-03-30 23:56 -0700
Re: Why does 1**2**3**4**5 raise a MemoryError? Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-03-31 07:33 +0000
Re: Why does 1**2**3**4**5 raise a MemoryError? Dave Angel <davea@davea.name> - 2013-03-31 03:48 -0400
Re: Why does 1**2**3**4**5 raise a MemoryError? morphex <morphex@gmail.com> - 2013-03-31 05:07 -0700
Re: Why does 1**2**3**4**5 raise a MemoryError? Dave Angel <d@davea.name> - 2013-03-31 08:43 -0400
Re: Why does 1**2**3**4**5 raise a MemoryError? Roy Smith <roy@panix.com> - 2013-03-31 09:15 -0400
Re: Why does 1**2**3**4**5 raise a MemoryError? Jason Swails <jason.swails@gmail.com> - 2013-03-31 10:03 -0400
Re: Why does 1**2**3**4**5 raise a MemoryError? Roy Smith <roy@panix.com> - 2013-03-31 09:04 -0400
Re: Why does 1**2**3**4**5 raise a MemoryError? Tim Roberts <timr@probo.com> - 2013-04-01 21:45 -0700
Re: Why does 1**2**3**4**5 raise a MemoryError? Chris Angelico <rosuav@gmail.com> - 2013-04-02 17:16 +1100
Re: Why does 1**2**3**4**5 raise a MemoryError? Dan Sommers <dan@tombstonezero.net> - 2013-04-02 12:56 +0000
Re: Why does 1**2**3**4**5 raise a MemoryError? Roy Smith <roy@panix.com> - 2013-03-31 08:59 -0400
Re: Why does 1**2**3**4**5 raise a MemoryError? Dave Angel <davea@davea.name> - 2013-03-31 03:34 -0400
Re: Why does 1**2**3**4**5 raise a MemoryError? "Alex" <foo@email.invalid> - 2013-03-31 22:06 +0000
Re: Why does 1**2**3**4**5 raise a MemoryError? Chris Angelico <rosuav@gmail.com> - 2013-04-01 09:28 +1100
Re: Why does 1**2**3**4**5 raise a MemoryError? "Alex" <foo@email.invalid> - 2013-04-01 00:39 +0000
Re: Why does 1**2**3**4**5 raise a MemoryError? Chris Angelico <rosuav@gmail.com> - 2013-04-01 11:58 +1100
Re: Why does 1**2**3**4**5 raise a MemoryError? Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-01 04:16 +0000
Re: Why does 1**2**3**4**5 raise a MemoryError? Roy Smith <roy@panix.com> - 2013-04-01 07:48 -0400
Re: Why does 1**2**3**4**5 raise a MemoryError? Nobody <nobody@nowhere.com> - 2013-04-02 08:40 +0100
Re: Why does 1**2**3**4**5 raise a MemoryError? Chris Angelico <rosuav@gmail.com> - 2013-04-01 09:32 +1100
Re: Why does 1**2**3**4**5 raise a MemoryError? Dave Angel <davea@davea.name> - 2013-03-31 18:34 -0400
csiph-web