- Python’s time.sleep() – Pause, Stop, Wait or Sleep your Python Code
- Python’s time.sleep() – Pause, Stop, Wait or Sleep your Python Code
- The time.sleep() function
- time.sleep() Arguments
- Using Python’s time.sleep()
- Advanced syntax of the sleep() function
- The Accuracy of time.sleep()
- Using Decorators To Add time.sleep() Command
- Using Threads To Add time.sleep() Command
- Wait for 1 second in Python
- How to wait for 1 second in Python?
- Using the sleep() function from the time module to wait for 1 second in Python.
- Using the driver.implicitly_wait() function to wait for 1 second in Python.
- The Python Sleep Function – How to Make Python Wait A Few Seconds Before Continuing, With Example Commands
- The Details of Sleep
- Sleep in Action
- You Can Be Precise
- Create a Timestamp
- sleep() and the User Experience
Python’s time.sleep() – Pause, Stop, Wait or Sleep your Python Code
Suppose you are developing a user interface, and you support it with your code. Your user is uploading a document, and your code needs to wait for the time the file is being uploaded. Also, when you visit a complex having automated doors, you must have noticed that while you are entering the complex, the door stands still. Only when you have entered the complex, the door closes automatically. What is causing the delay in both situations?
Codes support both systems discussed above. It is the time delay function of programming languages that is causing the required time delay. We can also add time delays in our Python codes. The time module of Python allows us to establish delay commands between two statements. There are numerous ways to add a time delay and, in this article, we will discuss each method step-by-step.
Python’s time.sleep() – Pause, Stop, Wait or Sleep your Python Code
Python’s time module has a handy function called sleep() . Essentially, as the name implies, it pauses your Python program. The time.sleep() command is the equivalent to the Bash shell’s sleep command. Almost all programming languages have this feature.
The time.sleep() function
While using this function, we can specify the delay, and the compiler will execute the fixed time delay. The syntax of this function is as follows:
time.sleep() Arguments
- secs — The number of seconds the Python program should pause execution. This argument should be either an int or float .
Using Python’s time.sleep()
Here’s a quick, simple example of the syntax:
Here we have instructed the system to wait for five seconds through the first command and then wait for three hundred milliseconds, which equals 0.3 seconds. You can note here that we have written the value of the time delay inside the bracket based on the syntax.
Now let us consider another example to execute time delay.
Here we have taken a variable ‘a’ whose value we have stored as five. Now we are printing the value ‘a’ and then again printing an increased value of ‘a’. However, there is a time delay between the execution of both statements. And, we have specified that using the time.sleep() function. You must have observed that we have also imported the time module at the beginning of the code.
Now let’s see what the output is:
Here we can see that only the first command is executed. Now the output after five seconds:
Now, after a delay of five seconds, the second statement is also executed.
Advanced syntax of the sleep() function
Here’s a more advanced example. It takes user input and asks you how long you want to sleep() . It also proves how it works by printing out the timestamp before and after the time.sleep() call. Note that Python 2.x uses the raw_input() function to get user input, whereas Python 3.x uses the input() function. Now let us see the input syntax:
The code given above asks the user how long to wait. We have mentioned the command for this output in the sleeper() function. Then, the code prints the computer time at the beginning of the execution of code and after the implementation of code. This way, we get to see the actual functioning of the delay function. Now let’s see the output:
The system asks for our input, i.e., how long we want the system to wait. Let’s enter 5 seconds and observe the final output.
We can see that the starting computer time(“Before”) and ending computer time(“After”) have a time difference of five seconds.
The Accuracy of time.sleep()
The time.sleep() function uses the underlying operating system’s sleep() function. Ultimately there are limitations of this function. For example, on a standard Windows installation, the smallest interval you may delay is 10 — 13 milliseconds. The Linux kernels tend to have a higher tick rate, where the intervals are generally closer to 1 millisecond. Note that in Linux, you can install the RT_PREEMPT patch set, which allows you to have a semi-realtime kernel. Using a real-time kernel will further increase the accuracy of the time.sleep() function. However, unless you want to sleep for a brief period, you can generally ignore this information.
Using Decorators To Add time.sleep() Command
Decorators are used for creating simple syntax for calling higher-order functions. When can we use decorators? Suppose we have to test a function again, or the user has to download a file again, or you have to check the status of an interface after a specific time interval. You require a time delay between the first attempt and the second attempt. Thus, you can use decorators in cases where you need to check repeatedly and require a time delay.
Let’s consider an example using decorators. In this program, we will calculate the amount of time taken for the execution of the function.
Here time_calc() is the decorator function extending and containing the other functions, thus providing a simple syntax. Let’s see what we get as the output.
Using Threads To Add time.sleep() Command
Multiple-threading in Python is equivalent to running several programs simultaneously. When multi-threading is combined with the time module, we can solve complex problems quickly. Multi-threading functions are available from the threading module.
Let’s print the alphabet song using multi-threading and time delay.
Here one thread is being used to print the individual alphabets. There is a time delay of 0.5 seconds as well. When you run the program, you will see that each line of the alphabet song is printed after a delay of 0.5 seconds. Let’s see what the output is:
Wait for 1 second in Python
There are often times when there is a need to manually add delays or waiting time to a program in Python. This is one of the techniques to provide an overall better programming experience. This tutorial focuses on demonstrating the different ways available to learn how to wait for 1 second in Python.
How to wait for 1 second in Python?
Using the sleep() function from the time module to wait for 1 second in Python.
The time module, as its name suggests, provides several functions and classes exclusively related to time. The time module needs to be imported to the Python code in order to utilize any of the functions of this module.
The sleep() function from the time module is utilized to add waiting time to a program or in simpler terms, delay a program by the specified amount of time in Python. The amount of time can be specified as an argument to this function, and the unit for it is seconds . The sleep() function can also take in floating-point numbers which can help in dealing with milliseconds for the function.
The following code uses the sleep() function from the time module to wait for 1 second in Python.
The above code provides the following output:
The above code records that the output statement «Printing after 1 second delay» is displayed after a slight delay of 1 second, which means the task to wait for 1 second in Python is successfully implemented with the help of the time.sleep() function.
We should note that it is not recommended to utilize the time.sleep() function along with the tkinter library functions as the sleep() function might hinder the performance and the functioning of the functions of the tkinter module.
Using the driver.implicitly_wait() function to wait for 1 second in Python.
The driver.implcitly_wait() function is typically utilized to set a timeout which makes the Python code implicitly delay its process until a command is completed or an element is found. Being an implicit method, it is global which makes the need for this function to be called only once in the lifetime of the code. This function, however, is not a direct Python function but rather a Selenium function.
Similar to the time.sleep() function mentioned above, the driver.implicitly_wait() function also takes in the time as an argument and in the unit seconds .
The following code uses the driver.implicitly_wait() function to wait for 1 second in Python.
The Python Sleep Function – How to Make Python Wait A Few Seconds Before Continuing, With Example Commands
Amy Haddad
You can use Python’s sleep() function to add a time delay to your code.
This function is handy if you want to pause your code between API calls, for example. Or enhance the user’s experience by adding pauses between words or graphics.
from time import sleep sleep(2) print("hello world")
When I run the above code, there’s about a two-second delay before «hello world» prints.
I experience a delay because sleep() stops the “execution of the calling thread” for a provided number of seconds (though the exact time is approximate). So the execution of the program is paused for about two seconds in the above example.
In this article, you’ll learn how to put your Python code to sleep.
The Details of Sleep
Python’s time module contains many time-related functions, one of which is sleep() . In order to use sleep(), you need to import it.
sleep() takes one argument: seconds. This is the amount of time (in seconds) that you want to delay your code.
Sleep in Action
Now let’s use sleep() in a few different ways.
After I import the sleep from the time module, two lines of text will print. However, there will be an approximate two-second delay between the printing of each line.
from time import sleep print("Hello") sleep(2) print("World")
This is what happened when I ran the code:
«Hello» This line printed right away.
Then, there was approximately a two-second delay.
«World» This line printed about two seconds after the first.
You Can Be Precise
Make your time delay specific by passing a floating point number to sleep() .
from time import sleep print("Prints immediately.") sleep(0.50) print("Prints after a slight delay.")
This is what happened when I ran the code:
«Prints immediately.» This line printed immediately.
Then, there was a delay of approximately 0.5 seconds.
«Prints after a slight delay.» This line printed about 0.5 seconds after the first.
Create a Timestamp
Here’s another example to consider.
In the code below, I create five timestamps. I use sleep() to add a delay of approximately one second between each timestamp.
import time for i in range(5): current_time = time.localtime() timestamp = time.strftime("%I:%m:%S", current_time) time.sleep(1) print(timestamp)
Here, I import the entire time module so I can access multiple functions from it, including sleep().
Then, I create a for loop that will iterate five times.
On each iteration, I get the current time.
current_time = time.localtime()
I get a timestamp using another function in the time module, strftime() .
timestamp = time.strftime("%I:%m:%S", current_time)
The sleep() function is next, which will cause a delay on each iteration of the loop.
When I run the program I wait about a second before the first timestamp prints out. Then, I wait about a second for the next timestamp to print, and so on until the loop terminates.
The output looks like this:
04:08:37 04:08:38 04:08:39 04:08:40 04:08:41
sleep() and the User Experience
Another way to use sleep() is to enhance the user’s experience by creating some suspense.
from time import sleep story_intro = ["It", "was", "a", "dark", "and", "stormy", "night", ". "] for word in story_intro: print(word) sleep(1)
Here, I iterate through the list of words in story_intro . To add suspense, I use the sleep() function to delay by about a second after each word is printed.
Although execution speed is often at the forefront of our minds, sometimes it’s worth slowing down and adding a pause in our code. When those occasions arise, you know what to reach for and how it works.
I write about learning to program, and the best ways to go about it on amymhaddad.com. I tweet about programming, learning, and productivity: @amymhaddad.
Amy Haddad
Programmer and writer | howtolearneffectively.com | dailyskillplanner.com
If you read this far, tweet to the author to show them you care. Tweet a thanks
Learn to code for free. freeCodeCamp’s open source curriculum has helped more than 40,000 people get jobs as developers. Get started
freeCodeCamp is a donor-supported tax-exempt 501(c)(3) charity organization (United States Federal Tax Identification Number: 82-0779546)
Our mission: to help people learn to code for free. We accomplish this by creating thousands of videos, articles, and interactive coding lessons — all freely available to the public. We also have thousands of freeCodeCamp study groups around the world.
Donations to freeCodeCamp go toward our education initiatives, and help pay for servers, services, and staff.