NoneType in Python

NoneType Python

In python, we have different types of objects such as integers, strings, and floating-point numbers to represent data. In addition to these, we also have a NoneType object in python to represent the absence of data or to show that there is no data or object. In this article, we will discuss NoneType in python. We will also look at some properties and applications of NoneType objects.

What is NoneType in Python?

In python, we have a special object “None” to represent that a variable doesn’t refer to any object. The object “None” has the datatype “NoneType”. In other words, NoneType is the data type of the value None in python

To visualize this, let us declare a variable with the Value None and check its data type.


Here, you can observe that any variable that has the value None will have NoneType data type in Python.

Properties of NoneType Objects in Python

NoneType in python has only one object i.e. None. There can be only one None object in a python program. Even if you declare two or more variables with the value None, they will refer to the same NoneType object. We can verify this using the identity of the objects that we can find using the id() function. 

In python, every object has its unique identity number. The id() function takes a variable as an input argument and returns the identity number of the variable as shown below.


You can verify that two variables that have the value None refer to the same object by checking their identity using the id() function as follows.


Here, you can observe that both the variables have the same identity number, although we have declared two different variables and have assigned values to them separately. This confirms that a python program can have only one NoneType object.

As there is only one None object, we can use the identity operator “is” instead of equality operator “==” to check if a variable has the value None. This is because the identity operator has faster execution than the equality operator. However, using the equality operator will not raise any error in your program. 

Another property of NoneType objects is that they evaluate to False if used in a boolean expression. For instance, if you use an integer object like a boolean expression in an if statement, it evaluates to True. On the other hand, NoneType objects evaluate to False if used as a boolean expression in an if statement. You can observe this in the following example.


Applications of NoneType Objects in Python

  • We use the NoneType object in a python program whenever we have no value to assign to a variable.
  • Uninitialized variables also refer to the value None
  • Sometimes, None is used as the default value for parameters when we define a function.
  • Functions that do not have a return statement return the value None to the caller.


In this article, we have discussed NoneType objects in python. We also discussed the properties and applications of the NoneType objects. You can use the properties of the NoneType objects to use them efficiently in your programs.

Was this post helpful?


You may also like:

Related Posts

  • 27 December

    Create Array of All NaN Values in Python

    Table of ContentsUsing numpy.empty() FunctionUsing numpy.full() FunctionUsing numpy.tile() FunctionUsing numpy.repeat() FunctionUsing Multiplication of numpy.ones() with nan Using numpy.empty() Function To create an array of all NaN values in Python: Use numpy.empty() to get an array of the given shape. Assign numpy.nan to every array element using the assignment operator (=). [crayon-63b2e993bbd7b938430869/] [crayon-63b2e993bbd82491993006/] We used numpy.empty() […]

  • 27 December

    Call Function from Another Function in Python

    Table of ContentsCall a Function in PythonCall Function from Another Function in PythonCall a Function from Another Function within the Same/Different Classes Call a Function in Python To call a function in Python: Write a test() function, which prints a message. Call the function defined in the previous step. [crayon-63b2e993b74dd084348226/] [crayon-63b2e993b74e1256216972/] To call a function, […]

  • 27 December

    [Fixed] NameError Name ‘unicode’ is Not Defined in Python

    Table of ContentsUse str() MethodUse sys.version_info with strUse six.text_type Use str() Method To resolve the NameError: name 'unicode' is not defined, replace the occurrence of unicode() with str(). This issue occurs because unicode() was renamed to str() in Python 3. [crayon-63b2e993bbf82534062998/] [crayon-63b2e993bbf86960247203/] Unicode is a computing industry standard that ensures that text from most of […]

  • 26 December

    Repeat List N Times in Python

    Table of ContentsUsing the * operatorUsing the numpy.repeat() functionUsing the list comprehension techniqueUsing the itertools.repeat() functionConclusion This tutorial will demonstrate how to repeat list n times in Python. Using the * operator To repeat list n times in Python, use the * operator. Star operator(*) is used to multiply list by number e.g. lst*3 and […]

  • 26 December

    Get First Day of Next Month in Python

    Table of ContentsGet First Day of Next Month in PythonUsing the datetime.replace() with datetime.timedelta() functionUsing the calendar.monthrange() functionUsing the dateutil.relativedelta objectConclusion Get First Day of Next Month in Python This tutorial will demonstrate how to get first day of next month in Python. Using the datetime.replace() with datetime.timedelta() function To get first day of next […]

  • 25 December

    Convert String Array to Int Array in Python

    Table of ContentsUsing the for loop with int() functionUsing for loop with eval() functionUsing the map() with list() functionConclusion This tutorial will demonstrate how to convert string array to int array in Python. Using the for loop with int() function To convert string array to int array in Python: Use the for loop to loop […]

Leave a Reply

Your email address will not be published. Required fields are marked *

Subscribe to our newletter

Get quality tutorials to your inbox. Subscribe now.