Python is one of the most popular operating systems in the industry today. Starting from amateurs all the way to professional users, everyone is using Python, but even so, there are some aspects which are yet undiscovered. One such aspect of Python is the native goto statement. So, in this article, we will discuss goto statement in python in the following order:
To get in-depth knowledge on Python along with its various applications, you can enroll now for Best Python Course Online with 24/7 support and lifetime access.
What is a Goto Statement?
A goto statement can simply be defined as syntax or a piece of code which provides an unconditional jump from the goto statement to one marked as the destination in the contents of the same function. In layman terms, if you want the program to skip a certain number of functions in between you need to use the goto statement.
Syntax
The syntax for the goto statement in Python is as given below.
#Syntax-1 goto label; . . . label: #Syntax-2 label: . . . goto label;
In the above example, the label can be replaced with any text that you require, except the keyword Go and it can be set anywhere in the program, either below or above the go statement as well.
Quick Fact: The goto statement was first released on 1st April 2004 as a joke, but programmers across the world took it seriously and started using it.
Top 10 Trending Technologies to Learn in 2025 | Edureka
Iterations of the Goto Statement
Another code that works the same as a goto statement in Python is comefrom
. Both comefrom
and the goto
statements add flexibility to the overall program in Python, thus allowing one to control program flow mechanisms and also include accessibility to control flow idioms that were previously out of bounds for them.
In order to use both the goto as well as comefrom
statements in Python, one needs to first import them the main library. To do this, type the code mentioned below.
from goto import goto, comefrom, label
Once the libraries have been imported, you can conveniently use both these functions across your program.
When you use a goto statement in Python, you are basically instructing the interpreter to directly execute another line of code instead of the current one. The target line of code which you want the interpreter to execute at this moment needs to be marked in the section termed “label”. One thing to note about the label tag is the fact that they are mostly random and arbitrary Python identifiers prefixed with a single dot. Example label .myLabel.
Explore top Python interview questions covering topics like data structures, algorithms, OOP concepts, and problem-solving techniques. Master key Python skills to ace your interview and secure your next developer role.
Computed Goto Statement
One of the most common variations of the goto statements used in Python by most programmers is the computed goto statement. In this you mention the python index at the beginning of the code and later refer to it by using a hashtag. Example,
x = calculateLabelName() goto *x
Note: The value of x in the above statement should not include the prefix dot as mentioned in the example before this.
Comefrom
In Python, the comefrom
statement is basically the opposite of the goto statement. In the most simple of terms, its function to the interpreter can be explained via the following statement, “Whenever label X is reached, jump to here instead.”
An example of the comefrom
statement in action is mentioned below.
# ...code 1...
label .somewhere
# ...code 2...
comefrom .somewhere
In the above statement, code 2 will not be executed. When the interpreter reaches the line label .somewhere, it will directly skip to the next line that is comefrom
.somewhere.
Another important aspect to note about the comefrom
statement is the fact that it is mostly always used as a debugging aid in programming. Its use in standalone programming operations is mostly discouraged, as it might sometimes lead to inconvenient and supporting results.
Restrictions in Goto Statement in Python
Similar to other coding platforms and lines of code, Python too puts a number of restrictions on what both the goto as well as the comefrom statement can accomplish. Mentioned below are some of the most common restrictions for both the goto and comefrom statements.
Jumping into the middle of a loop or a finally clause is not allowed using either of these statements.
One cannot use either of these statements to jump between functions and or modules.
It cannot be used to jump into an except line, because there is no exception line in the first place.
# Example 1: Breaking out from a deeply nested loop:
from goto import goto, label for i in range(1, 10): for j in range(1, 20): for k in range(1, 30): print i, j, k if k == 3: goto .end label .end print "Finishedn"
# Example 2: Cleaning up after something fails:
from goto import goto, label # Imagine that these are real worker functions. def setUp(): print "setUp" def doFirstTask(): print 1; return True def doSecondTask(): print 2; return True def doThirdTask(): print 3; return False # This one pretends to fail. def doFourthTask(): print 4; return True def cleanUp(): print "cleanUp" # This prints "setUp, 1, 2, 3, cleanUp" - no "4" because doThirdTask fails. def bigFunction1(): setUp() if not doFirstTask(): goto .cleanup if not doSecondTask(): goto .cleanup if not doThirdTask(): goto .cleanup if not doFourthTask(): goto .cleanup label .cleanup cleanUp() bigFunction1() print "bigFunction1 donen"
The goto statement is Python is one of the most helpful when it comes to auditing as well as debugging needs. Although it can sometimes be used in day to day programming, using it more than often can sometimes lead to surprising results.
With this, we come to an end of this goto statement in Python article. Got a question for us? Mention them in the comments section of “Goto Statement in Python” and we will get back to you or join our Master Python programming course..