How to add Time Delay in Python?
Last Updated :
25 Jun, 2025
A time delay means pausing the program for a short period before continuing to the next step. This is useful when you want to slow down the execution, like waiting between messages or steps in a loop. In Python, you can add a delay using the sleep() function from the time module, where you specify how many seconds the program should wait.
Now let's look at different ways to pause/delay execution in Python.
Using time.sleep() function
The time.sleep() function pauses the program for a set number of seconds before continuing. It's the simplest way to add a delay in execution.
Syntax:
time.sleep(seconds)
seconds: The number of seconds to pause the program (can be an integer or float).
Example 1: Printing the numbers by adding a time delay.
Python
import time
for i in range(0,5):
print(i)
time.sleep(2)
Output

Explanation: It prints numbers one by one from 0 to 4, pausing 2 seconds between each print.
Example 2: Dramatic printing using sleep() for every character.
Python
import time
msg = input("Enter your message: ")
for char in msg:
print(char, end="")
time.sleep(0.5)
Output

Explanation:
- The code prints each character of a string with a 0.5-second delay using time.sleep().
- It creates an auto-typing effect on the screen.
Example 3: Printing the pattern by taking range from the user and adding time delay.
Python
import time
num = int(input("Enter the range: "))
print("Printing the pattern")
for i in range(0, num):
for j in range(0, i + 1):
print('*', end=' ')
time.sleep(0.5)
print(' ')
Output

Explanation:
- It prints a right-angled triangle pattern of asterisks (*) using nested loops.
- Each * is printed with a 0.5-second delay to create a slow, step-by-step visual effect.
Example 4: Multithreading using sleep()
Python
import time
from threading import Thread
class Geeks(Thread):
def run(self):
for x in range(4):
print("Geeks")
time.sleep(2.2)
class For(Thread):
def run(self):
for x in range(3):
print('For')
time.sleep(2.3)
print("Hello")
g1 = Geeks()
f1 = For()
g1.start()
f1.start()
g1.join()
f1.join()
print("All Done!!")
Output

Explanation:
- Two classes Geeks and For run in separate threads and print "Geeks" and "For" multiple times with delays.
- Both threads start together and print messages at the same time.
- After both finish, the program prints "All Done!!".
Using threading.Event.wait function
threading.Event().wait() function pauses a thread for a specified time without blocking other threads. It's similar to time.sleep() but works well in multithreading scenarios.
Syntax:
threading.Event().wait(timeout)
timeout: Number of seconds to wait. If not given, it waits indefinitely until the event is set.
Example:
Python
import threading
d = 2
print('Geeks')
threading.Event().wait(d)
print('for')
threading.Event().wait(d)
print('Geeks')
Output
Geeks
for
Geeks
Explanation: It creates a typing effect with pauses, using threading.Event().wait() as an alternative to time.sleep() for delaying execution without blocking other threads (if used in multithreaded programs).
Using threading.Timer class
threading.Timer class runs a function after a specified delay in a separate thread. It's useful for scheduling tasks without blocking the main program.
Syntax:
threading.Timer(interval, function, args=None, kwargs=None)
- interval: Time (in seconds) to wait before running the function.
- function: The function to execute after the delay.
- args (optional): Tuple of arguments for the function.
- kwargs (optional): Dictionary of keyword arguments for the function.
Example:
Python
import threading
def gfg():
print("Computer Science: GeeksforGeeks\n")
t = threading.Timer(1.0, gfg)
t.start()
print("Timer")
Output
Timer
Computer Science: GeeksforGeeks
Explanation:
- Prints "Timer" right away. Then, after a 1-second delay, it runs the gfg() function in the background and prints "Computer Science: GeeksforGeeks".
- The delay doesn’t stop the main program.
Using time.monotonic() and time.monotonic_ns() functions
time.monotonic() and time.monotonic_ns() return a clock value that always moves forward, making them useful for measuring time gaps. They aren’t affected by system clock changes. monotonic_ns() gives the time in nanoseconds for higher precision.
Example 1: With time.monotonic() function
Python
import time
t = time.monotonic()
d = 5
while True:
t2 = time.monotonic()
t3 = t2 - t
if t3 >= d:
break
print("Time delay of 5 seconds is over!")
OutputTime delay of 5 seconds is over!
Explanation: Measures a 5-second delay using time.monotonic() by checking the time difference in a loop, then prints a message when the delay is over.
Example 2: With time.monotonic_ns() function
Python
import time
t = time.monotonic_ns()
d = 5_000_000_000
while time.monotonic_ns() - t < d:
pass
print("Time delay of 5 seconds is over!")
Output
Time delay of 5 seconds is over!
Explanation: It waits for 5 seconds using high-precision time.monotonic_ns(). After the delay, it prints a message saying the time is over.
Related Articles:
Similar Reads
Python Tutorial - Learn Python Programming Language Python is one of the most popular programming languages. Itâs simple to use, packed with features and supported by a wide range of libraries and frameworks. Its clean syntax makes it beginner-friendly. It'sA high-level language, used in web development, data science, automation, AI and more.Known fo
10 min read
Python Interview Questions and Answers Python is the most used language in top companies such as Intel, IBM, NASA, Pixar, Netflix, Facebook, JP Morgan Chase, Spotify and many more because of its simplicity and powerful libraries. To crack their Online Assessment and Interview Rounds as a Python developer, we need to master important Pyth
15+ min read
Non-linear Components In electrical circuits, Non-linear Components are electronic devices that need an external power source to operate actively. Non-Linear Components are those that are changed with respect to the voltage and current. Elements that do not follow ohm's law are called Non-linear Components. Non-linear Co
11 min read
Python OOPs Concepts Object Oriented Programming is a fundamental concept in Python, empowering developers to build modular, maintainable, and scalable applications. By understanding the core OOP principles (classes, objects, inheritance, encapsulation, polymorphism, and abstraction), programmers can leverage the full p
11 min read
Python Projects - Beginner to Advanced Python is one of the most popular programming languages due to its simplicity, versatility, and supportive community. Whether youâre a beginner eager to learn the basics or an experienced programmer looking to challenge your skills, there are countless Python projects to help you grow.Hereâs a list
10 min read
Python Exercise with Practice Questions and Solutions Python Exercise for Beginner: Practice makes perfect in everything, and this is especially true when learning Python. If you're a beginner, regularly practicing Python exercises will build your confidence and sharpen your skills. To help you improve, try these Python exercises with solutions to test
9 min read
Python Programs Practice with Python program examples is always a good choice to scale up your logical understanding and programming skills and this article will provide you with the best sets of Python code examples.The below Python section contains a wide collection of Python programming examples. These Python co
11 min read
Spring Boot Tutorial Spring Boot is a Java framework that makes it easier to create and run Java applications. It simplifies the configuration and setup process, allowing developers to focus more on writing code for their applications. This Spring Boot Tutorial is a comprehensive guide that covers both basic and advance
10 min read
Python Introduction Python was created by Guido van Rossum in 1991 and further developed by the Python Software Foundation. It was designed with focus on code readability and its syntax allows us to express concepts in fewer lines of code.Key Features of PythonPythonâs simple and readable syntax makes it beginner-frien
3 min read
Python Data Types Python Data types are the classification or categorization of data items. It represents the kind of value that tells what operations can be performed on a particular data. Since everything is an object in Python programming, Python data types are classes and variables are instances (objects) of thes
9 min read