evaluation question
Mark Bourne
nntp.mbourne at spamgourmet.com
Sat Jan 28 09:39:27 EST 2023
Muttley at dastardlyhq.com wrote:
> On Sat, 28 Jan 2023 14:22:01 +1300
> dn <PythonList at DancesWithMice.info> wrote:
>> Do you know about the Python REPL?
>
> Haven't learnt the acronyms yet.
REPL stands for "Read Evaluate Print Loop". It basically refers to the
interactive interpreter, which reads input you type, evaluates it,
prints the result, and loops (repeatedly does that).
An interesting point from your examples is that the output from the
first two comes from different steps in that loop.
>>> eval("1+1")
2
Here, the E (evaluation) step runs eval("1+1"), which returns 2. The P
(print) step then prints that result. If this was in a script, you
wouldn't see any output, and the statement is pretty much useless -
you'd need to assign the result to a variable or explicitly print it.
>>> eval("print(123)")
123
Here, the E step runs eval("print(123)"), which prints 123 and returns
None. The P step doesn't print anything if the result is None. You'd
still see that output if this was in a script.
Using eval in those examples is pretty pointless, since:
>>> 1+1
>>> print(123)
would produce the same results - but of course they were just simple
examples.
--
Mark.
More information about the Python-list
mailing list