Open In App

Role of Underscores '_' in Python

Last Updated : 11 Sep, 2021
Comments
Improve
Suggest changes
Like Article
Like
Report

The Underscore (_) is an eccentric character in Python. It can be used in many ways in a Python program.

The various uses of underscore (_) in Python are:

1) Use in Interpreter:

Python immediately saves the value of the last expression in the interpreter in this unique variable. Underscore (_) can also be used to value of any other variable.

Example 1:

Underscore (_) can be also be used as a normal variable.

Example 2:

Python3
# Storing value in _
_ = 2 + 8

print(_)

Output:

10

2) Use in Loops:

In Python underscore (_) can be used as a variable in looping. It will access each element of the data structure.

Example 1:

Python3
# Creating tuple
Tuple = (50, 40, 30)

# Using _ to access index of each element
for _ in range(3):
    print(Tuple[_])

Output:

50
40
30

Example 2:

Python3
# Creating list
List = ['Geeks', 4, 'Geeks!']

# Using _ to access elements of list
for _ in List:
    print(_)

Output:

Geeks
4
Geeks!

3) Use in Ignoring Variables:

In Python underscore (_) is often used to ignore a value. If one doesn't use some values when unpacking, just set the value to underscore (_). Ignoring involves assigning values to a particular vector underscore (_). We add values to underscore (_) if this is not used in future code.

Example 1:

Python3
# Using _ to ignore values
p, _, r = 'Geeks', 4, 'Geeks!'

print(p, r)

Output:

Geeks Geeks!

Example 2:

Python3
# Using _ to ignore multiple values
p, q, *_, r = 'Geeks', 4, 'randomText', 1234, '3.14', "Geeks!"

print(p, q, r)

print(_)

Output:

Geeks 4 Geeks!
['randomText', 1234, '3.14']

4) Separating digit of Numbers:

Underscores (_) can also be used to represent long digits number, it separates the group of digits for better understanding.

Python3
# Using _ to separate digits
Crore = 10_00_000

print(Crore)

Output:

1000000

5) Use in Defining Access of Data members and Methods in Class:

Underscore (_) is used as a prefix for a method or data member in a class, defines its Access Specifier, and using double underscores (__) as both suffix and prefix refer to a Constructor.

Example 1:

Python3
class Gfg:
    a = None
    _b = None
    __c = None
    
    # Constructor
    def __init__(self, a, b, c):

        # Data members
        # Public
        self.a = a
        
        # Protected
        self._b = b
        
        # Private
        self.__c = c

    # Methods
    # Private method
    def __display(self):
        print(self.a)
        print(self._b)
        print(self.__c)
    # Public method
    def accessPrivateMethod(self):
        self.__display()


# Driver code
# Creating object
Obj = Gfg('Geeks', 4, "Geeks!")

# Calling method
Obj.accessPrivateMethod()

Output:

Geeks
4
Geeks!

Next Article
Article Tags :
Practice Tags :

Similar Reads