What do the three arrow (">>>") signs mean?
Asked Answered
N

6

62

I haven't been able to figure out what the >>> does, even though I often see it often in source code.

Nightfall answered 7/5, 2013 at 13:16 Comment(4)
They mean you are running your code in a Python shell eg. on terminal or IDLE etc. I'm not sure that this qualifies as a question. They are a decoration...Mispronounce
Besides the python command line prompt will print >>> where you type stuff, you shouldn't see this in valid source code. Please provide a links to an example.Lucretialucretius
If you see them in source code they are just showing a shell session to demonstrate the code with examples inside of a commentMispronounce
Might also be a VCS conflict relict.Masthead
R
47

You won't see it in source code, it's probably documentation. It indicates an interactive session, and things typed into the 'interpreter' are marked with this. Output is shown without the arrows.

In fact, the python documentation often has a button >>>at the top right of example code to be able to hide the arrows (and output) so that you can copy and paste the code.

Shown:
shown
Hidden:
hidden

Raper answered 7/5, 2013 at 14:37 Comment(2)
If you do see it in a docstring in source code, it might be part of a doctest.Enarthrosis
In case someone is looking for the sphinx package that allows that: sphinx-toggleprompt.readthedocs.io/en/latestIgnazio
I
20

'>>>' is the prompt of the interactive Python interpreter, meaning that the interpreter is ready to get Python statements typed in. It's occuring quite often in examples within the documentation of a Python program, in order to show which commands can be used and what will be the result of giving these commands to the interactive interpreter. For example, in a documentation of the print statement, one could give this example:

>>> print "Hello world."
Hello world.

This would be an actual snippet of a session with the interactive Python interpreter.

An interesting feature in IPython is that it ignores leading >>>, meaning that you can copy and paste code from such documentation without needing to remove the leading >>>:

In [1]: >>> print "Hello world."
Hello world.

(The prompt in IPython is In [n]:, where n is counting the interactive commands issued.)

Ironwork answered 7/5, 2013 at 14:45 Comment(2)
Worth pointing out that in IPython, there is also the Out[n] which displays return values: In [4]: 1+1; Out[4]: 2 (as opposed to printed values as in your example). The standard python interpreter does not make this distinction by default.Raper
Also, coming from a duplicate, if you want to run something like python myscript.py that's not something you would type at Python's >>> prompt. You probably want to exit Python (ctrl-Z on Windows, ctrl-D on Unix-like systems, or type exit() on either) and run the command from your system prompt (CMD or PowerShell on Windows, Bash or whatever on Unix-like systems). If you really wanted to, there are ways to run a script in a file from the Python prompt, too, but let's not go there yet.Rustproof
B
7

Here are some of my findings on >>> and consequently ... complementing the previous answers.

You only see >>> when you are running Python in interactive mode prompting/asking the user for the "next command". Technical details here.


>>> and ... are not written in stone. These are stored in sys.ps1 and sys.ps2, and therefore can be changed. Further elaborated here.

>>> import sys
>>> sys.ps1 = "$ "
$

Every standard Python has this prompt unless you compile your own Python after changing >>> and ... to what you (sanely) wish to. Apart from that there seems to be a way to change it for all future interactive sessions by changing /usr/lib/python2.7/code.py but I couldn't find any success with it.

Betony answered 21/9, 2013 at 21:43 Comment(2)
Since you brought up ..., you should probably also mention that it is the symbol for Ellipsis in Python3.Whiteside
@Whiteside I don't quite get your point(don't know much about Python3). But I intentionally tried to remain focused on 2.7 seeing the question tag.Betony
P
4

The >>> prompt is the Python interpreter’s way of asking you, “What do you want me to do next?”, and it is called "chevron" prompt

Prohibition answered 1/11, 2018 at 14:38 Comment(0)
I
0

In case you are trying to figure out how to exit a session, run this:

quit()
Intussuscept answered 13/9, 2022 at 5:14 Comment(1)
I don't know why anyone would want to type quit() then press <kbd>Enter</kbd> for this particular purpose, instead of just left clicking that obvious cross sign...Risinger
C
-2

I found it to be called ' REPL'

Chopping answered 15/12, 2020 at 13:3 Comment(2)
No, the Read Eval Print Loop that Python enters when you run it interactively is called REPL, and the prompt in that REPL is >>> by default. Perhaps one of the existing answers should be updated to clarify this.Rustproof
nice! i learnt something new, thanks for clearing that! 😇😇Chopping

© 2022 - 2024 — McMap. All rights reserved.