Get Current time in Python
Last Updated :
19 Nov, 2024
Improve
In this article, we will know the approaches to get the current time in Python. There are multiple ways to get it. The most preferably date-time module is used in Python to create the object containing date and time. DateTime object in Python is used to manage operations involving time-based data.
- datetime.now(): This method returns a DateTime object representing the exact moment the code is executed.
- strftime() Method: This method is used to format the datetime object into a string in a specific format.
from datetime import datetime
# now() method is used to get object
# containing current date & time.
now = datetime.now()
# strftime() method used to create a string
# representing the current time.
currentTime = now.strftime("%H:%M:%S")
print("Current Time =", currentTime)
Output
Current Time = 06:20:18
Table of Content
Using time module
The time module helps to get time-related functions and it is well-suited for time manipulation.
- time.localtime(): Converts the current time (in seconds) to a struct_time object in the local timezone.
- time.strftime(format, t): Formats the time (given as a struct_time) into a string according to the specified format.
import time
# localtime() method used to get the object containing the local time.
t = time.localtime()
# strftime() method used to create a string representing the current time.
currentTime = t.strftime("%H:%M:%S", t)
print(currentTime)
Output
06:22:49
Get Time in a Specific Time Zone
To get a current time in a specific time zone, we can use time module combined with datetime.now and strftime() methods.
- pytz.timezone: This defines the India Standard Time (IST) time zone. This helps to get the correct time in the India Standard Time zone.
from datetime import datetime
import pytz
# Define the timezone for India
tz_india = pytz.timezone('Asia/Kolkata')
# Get the current time in India time zone
datetime_india = datetime.now(tz_india)
print("India Time:", datetime_india.strftime("%H:%M:%S"))
Output
India Time: 11:54:39