In Python, the
pass
statement does nothing. It is used when a syntactically valid statement is required, but no action needs to be performed.
7. Simple statements - The pass statement — Python 3.11.3 documentation
This article first explains the meaning of
pass
in Python and then describes how to use the
pass
statement with concrete examples.
What does the
pass
statement mean in Python
As you can see in the official documentation, the
pass
statement does nothing.
pass is a null operation — when it is executed, nothing happens. It is useful as a placeholder when a statement is required syntactically, but no code needs to be executed
7. Simple statements - The pass statement — Python 3.11.3 documentation
In Python, the contents of the
def
statement in function definitions and the
if
statement in conditional branches cannot be omitted. You can use the
pass
statement when you need to write a syntactically valid statement but don't need to perform any action.
Difference between
pass
and
continue
If the
continue
statement is used in the
for
or
while
loop, it will proceed to the next step without executing any code written after
continue
.
Python for loop (with range, enumerate, zip, etc.)
Python while loop (infinite loop, etc.)
for i in range(3):
print(i)
if i == 1:
continue
print('CONTINUE')
On the other hand, the pass
statement does nothing, so the code written after the pass
statement is executed.
for i in range(3):
print(i)
if i == 1:
print('PASS')
# PASS
Define an empty function and class with pass
You may need to define an empty function or class when you want to define a function or class first and then postpone the implementation.
If nothing is written in the def
statement, an error is raised.
# def empty_func():
# SyntaxError: unexpected EOF while parsing
You can define an empty function that does nothing with the pass
statement.
def empty_func():
The same is true for class.
# class EmptyClass():
# SyntaxError: unexpected EOF while parsing
class EmptyClass():
Although it is not recommended in PEP8 (E701), writing pass
after a colon :
does not raise an error.
PEP 8 - Other Recommendations – Style Guide for Python Code | peps.python.org
Error codes — pycodestyle 2.10.0 documentation
def empty_func_one_line(): pass
class EmptyClassOneLine(): pass
Create an empty file with pass
To create a new file, use with
and open()
in the write mode w
.
Read, write, and create files in Python (with and open())
Normally, you would use the write()
method to write contents to a file, but you can create an empty file using the pass
statement instead.
with open('temp/empty.txt', 'w'):
You can also write it in a single line.
with open('temp/empty.txt', 'w'): pass
In Python 3.4 and later, it is also possible to create an empty file with touch()
of the pathlib
module.
pathlib — Object-oriented filesystem paths — Python 3.9.1 documentation
Clarify that nothing is done in if ... elif ... else ...
with pass
You cannot omit the contents of each block in if ... elif ... else ...
.
Python if statements (if, elif, else)
Use the pass
statement when you want to postpone implementation or make the code's intent clearer by explicitly stating that no action is taken.
a = 3
if a % 2 == 0:
print('Even')
else:
Do nothing in exception handling (= ignore exceptions) with pass
When an exception is raised, an error message is output, and the process is terminated.
def divide(a, b):
print(a / b)
# divide(1, 0)
# ZeroDivisionError: division by zero
You can use try
to catch an exception and take action. If an exception is caught, the process continues without terminating.
def divide_exception(a, b):
try:
print(a / b)
except ZeroDivisionError as e:
print('ZeroDivisionError: ', e)
divide_exception(1, 0)
# ZeroDivisionError: division by zero
Use the pass
statement if you want to catch an exception and do nothing. Even if an exception raises, the process can continue without doing anything.
def divide_exception_pass(a, b):
try:
print(a / b)
except ZeroDivisionError as e:
divide_exception_pass(1, 0)
See the following article for details on exception handling in Python.
Exception handling in Python (try, except, else, finally)
How to import modules, packages, functions, etc. in Python
pandas: Replace Series values with map()
Draw circle, rectangle, line, etc. with Python, Pillow
Check pandas version: pd.show_versions
Copy and paste text to the clipboard with pyperclip in Python
NumPy: Replace NaN (np.nan) using np.nan_to_num() and np.isnan()
NumPy: Set the display format for ndarray
Detect and read barcodes with OpenCV in Python
Python indentation rules
List of pandas articles
List installed Python packages with pip list/freeze
pandas: Get first/last n rows of DataFrame with head() and tail()
pandas: Replace NaN (missing values) with fillna()
Convert BGR and RGB with Python, OpenCV (cvtColor)
List vs. array vs. numpy.ndarray in Python
How to import modules, packages, functions, etc. in Python
pandas: Replace Series values with map()
Draw circle, rectangle, line, etc. with Python, Pillow
Check pandas version: pd.show_versions
Copy and paste text to the clipboard with pyperclip in Python