How To Avoid Printing None In Python

In Python, one of the common mistakes that beginners make is unintentionally printing “None” in the output. This usually occurs when a function doesn’t return anything explicitly, and the programmer tries to print its output. In this tutorial, we will discuss different methods to avoid printing “None” when working with functions in Python.

Understanding None in Python

In Python, None represents the null value or the absence of a value. It is an object of its own data type – the NoneType. When we use a print() function inside another function definition and call that function, we might end up with an unintended “None” in the output.

Let’s consider an example:


Hello, John

In this example, the greeting() function is set to print a personalized message for the input name. The function does not return a value explicitly. When we call the function and store its result in the result variable, the value stored in result will be None, because that is the default return value for a function that doesn’t have a return statement. When we print result, we get “None” in the output.

Method 1: Using Return Statements

The first and simplest way to avoid printing “None” in Python is to use a return statement in the function definition.

Let’s modify our previous example:


Hello, John

In this example, we replaced the print statement inside the greeting() function with a return statement. Now, when we call the function and store the result in the result variable, it contains the actual output of the function, and there is no “None” printed.

Method 2: Checking for None before Printing

Another approach to avoid printing “None” involves checking whether the output of a function is None before printing it.

Let’s go back to our original example and modify how we print the result:


Hello, John

In this case, we didn’t modify the function definition. Instead, we added a condition before printing the result. If the result is not None, we print it. In this example, since the result variable has the value None, the condition evaluates to false, and we don’t print the “None” value.


In this tutorial, we discussed two methods to avoid printing “None” in Python. The first method involves using a return statement in a function definition. The second method includes checking for the None value before printing the output of the function. Both methods can help you avoid accidental “None” outputs while working with function results in Python.