Learning Sections show
Time Module in Python
Introduction
The time module in Python provides various functions to handle time-related tasks. It allows you to work with time in different ways, such as fetching the current time, measuring execution time, and formatting time representations.
Basic Functions
Here are some basic functions provided by the time module:
- time.time(): Returns the current time in seconds since the Epoch (January 1, 1970, 00:00:00 UTC).
- time.sleep(secs): Suspends execution for the given number of seconds.
- time.ctime([secs]): Converts a time expressed in seconds since the Epoch to a string representing local time.
- time.localtime([secs]): Converts a time expressed in seconds since the Epoch to a struct_time in local time.
- time.gmtime([secs]): Converts a time expressed in seconds since the Epoch to a struct_time in UTC.
Example Usage
Let's look at some examples to understand how these functions work.
import time
# Get the current time in seconds since the Epoch
current_time = time.time()
print("Current time:", current_time)
# Suspend execution for 2 seconds
time.sleep(2)
# Convert current time to a readable string
readable_time = time.ctime(current_time)
print("Readable time:", readable_time)
# Convert current time to struct_time in local time
local_time = time.localtime(current_time)
print("Local time:", local_time)
# Convert current time to struct_time in UTC
utc_time = time.gmtime(current_time)
print("UTC time:", utc_time)
Formatting Time
The time module also provides functions to format and parse time representations.
- time.strftime(format, [t]): Converts a struct_time or tuple representing a time to a string as specified by the format argument.
- time.strptime(string, format): Parses a string representing a time according to a format.
Example Usage of Formatting Functions
import time
# Format current local time as a string
formatted_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
print("Formatted time:", formatted_time)
# Parse a string to struct_time
time_string = "2024-05-27 10:30:00"
parsed_time = time.strptime(time_string, "%Y-%m-%d %H:%M:%S")
print("Parsed time:", parsed_time)
Measuring Execution Time
The time module can be used to measure the execution time of code snippets using time.time()
or time.perf_counter()
for higher precision.
import time
# Measure execution time using time.time()
start_time = time.time()
# Some code to measure
end_time = time.time()
execution_time = end_time - start_time
print("Execution time:", execution_time)
# Measure execution time using time.perf_counter()
start_perf_time = time.perf_counter()
# Some code to measure
end_perf_time = time.perf_counter()
perf_execution_time = end_perf_time - start_perf_time
print("Performance execution time:", perf_execution_time)