Register Login

Clear Screen in Python

25 Mar 2021 11:50 am || 0

While working on the Python terminal (not a console)/interactive shell, some errors occur in the output. So, we have to clean the screen by pressing Control (Ctrl) and L keys simultaneously.   

However, sometimes there are situations when the output has to be formatted properly to eliminate issues.

That's why clearing the screen is based on the amount of output. In this situation, some commands need to be inserted in Python's script to clear the screen as and when required.

So in this article, we will consider every possible way to clear the screen in Python without having any trouble or errors.

How to Clear Screen in Python Terminal

If you are working on a terminal, then use commands "cls" and "clear" to clear the terminal like this:

For Windows Users

If you are a Windows user and want to clear the screen in Python, you can easily do it using the "cls" command.

>cls 

This command will instantly clear the screen, as you can see in the below image:

cls

For Linux Users

Linux also has a command to clear screen in Python easily, so use the following command to do it:

$ clear

clear

Remember there is no specific function, built-in keywords, etc., available to clear the screen. That’s why users need to clear the screen according to them.

Clear Screen in Python Using Functions

Now let’s consider the functions we can use for clearing the screen in Python and remember that you can use these functions in both Windows and Linux.

Using click library

In this method, you can use click library to create a function, and it can work on both Windows and Linux.

Code:

# Python program to clear screen using click.clear() function

# Import click library
import click

def clrscr():
   # Clear screen using click.clear() function
    click.clear()
    
   print("Screen Cleared")
clrscr()

Output:

Screen Cleared

Code Explanation:

In the above example, we are using click.clear() function from click library to clear screen.

This function works in Windows, Linux, and Mac operating systems.

Using \n (Newline character)

The whole way of not clearing the screen is as different as the answer is different. To remove any further error of the line, the user does not need to run the external process completely so that the screen can be cleared.

To clear the screen, you have to print new numbers which are higher than the height and can print something like this ("\ n" * 10)

Code:

# Python program to clear the screen using \n
# ‘\n’ is a newline character

def clrscr():
   # Print ‘\n’ 10 times
    print ("\n" * 10)
    
print("Screen Cleared")
clrscr()

Output:

Screen Cleared

Code Explanation:

In the above example, we need to clear a few lined of the screen so we use “\n” with print, this will add a newline character and clear x number of lines.

Clear screen program by using os.system method

There are many OS platforms like Windows, Linux, and macOS, so we need different commands to clear the screen. So as you can see in the below syntax, we have used the '_' variable for holding the value of the last expression in the interpreter.

Now we will describe the os.system method to clear the screen in Python without having any troubles. As you can see in the below syntax, we have used the os.system command because It is a string that tells which command needs to be executed.

Code:

# Python program to clear the screen using os.system

# Import os module
import os

def clrscr():
    # Check if Operating System is Mac and Linux or Windows
   if os.name == 'posix':
      _ = os.system('clear')
   else:
      # Else Operating System is Windows (os.name = nt)
      _ = os.system('cls')
    
   print("Screen Cleared")
clrscr()

Output

Screen Cleared

Code Explanation:

We got "Screen Cleared" as we have printed it using the above syntax in the output.

In the above example first, we are checking if the operating system is Linux or not by checking the value of os.name method.
If the Operating system is Linux or Mac the value of os.name will be ”posix”.

And if the value of os.name is posix then we will run the function os.system('clear') or else we will run function os.system('cls').

Example 2

# Python program to clear screen
# This function is applicable for all operating system like Windows, Linux, and OS-X

# Import Library platform and os
import platform   
import os         


def clr_scr():  
    # Check if the platform is Windows or linux
# If Platform is Windows then run command os.system(‘cls’) else os.system(‘clear’)
    if(platform.system().lower()=="windows"):
        cmdtorun='cls'
    else:
        cmdtorun='clear'   
    
    os.system(cmdtorun)
clr_scr()

Code Explanation:

In the above example first, we check if the platform is Windows or Linux by using platform.system() function.

If the platform is “Windows” then we store the value of a command in the variable “cmdtorun”.

And at the end of the function, we are run the function os.system(cmdtorun) with the variable “cmdtorun”.

Using Subprocess Library

In this example, we have used the subprocess() function to execute an action for clearing the screen in output.

Input:

# Python program to clear the screen using subprocess.call() function

# Import subprocess library
import subprocess

def clrscr():
    cls = subprocess.call('cls',shell=True)
    print("Screen Cleared")
clrscr()

Output:

Screen Cleared

Conclusion

So this is how you can easily clear the screen in Python using functions or commands in the Syntax. As we have mentioned earlier,

There are many methods to clear the screen in Python without getting any errors. But, in our opinion, a clear screen using a click library is the easiest because it works with both the operating systems Unix, Windows, and macOS. And it doesn’t need checking the OS.