How to Get Current Date & Time in Python

You can use now()function of datetimepython module. This tutorial will show you various ways to get current date and time in the python script. Below example scripts to get date and time has been tested with Python 2.7 and Python 3.5 on Linux system.

Get Current Date Time in Python

By default now() function returns output in YYYY-MM-DD HH:MM:SS:MS format. Use below sample script to get current date and time in Python script and print results on screen. Create file getDateTime1.py with below content.
import datetime  currentDT = datetime.datetime.now() print (str(currentDT)) 
Let’s execute the script getDateTime1.py as following command.
rahul@tecadmin:~$ python getDateTime1.py   2017-03-06 16:00:04.159338 

Get Current Date Time Attributes in Python

You can also get the specific attribute of date and time. For example if you want to get only current year or month or date etc. create a getDateTime2.py file with following content, which will help you to understand to fetch specific attribute.
import datetime  currentDT = datetime.datetime.now()  print ("Current Year is: %d" % currentDT.year) print ("Current Month is: %d" % currentDT.month) print ("Current Day is: %d" % currentDT.day) print ("Current Hour is: %d" % currentDT.hour) print ("Current Minute is: %d" % currentDT.minute) print ("Current Second is: %d" % currentDT.second) print ("Current Microsecond is: %d" % currentDT.microsecond) 
Now, execute script getDateTime2.py like below
rahul@tecadmin:~$ python getDateTime2.py   Current Year is: 2017 Current Month is: 3 Current Day is: 6 Current Hour is: 16 Current Minute is: 6 Current Second is: 28 

Get Formated Date Time in Python

Also, if you need date and time in specific format, you can specify directive to format date and time. Create getDateTime3.py file with following content. This example have some sample formated date and time outputs.
import datetime  currentDT = datetime.datetime.now()  print (currentDT.strftime("%Y-%m-%d %H:%M:%S")) print (currentDT.strftime("%Y/%m/%d")) print (currentDT.strftime("%H:%M:%S")) print (currentDT.strftime("%I:%M:%S %p")) print (currentDT.strftime("%a, %b %d, %Y")) 
Now execute getDateTime3.py from command line
rahul@tecadmin:~$ python getDateTime3.py   2017-03-06 16:13:59 2017/03/06 16:13:59 04:13:59 PM Mon, Mar 06, 2017 
Below is the list of directives can be used to format date and time output in your Python script.
Directive Meaning
<span class="pre">%a</span> Locale’s abbreviated weekday name.
<span class="pre">%A</span> Locale’s full weekday name.
<span class="pre">%b</span> Locale’s abbreviated month name.
<span class="pre">%B</span> Locale’s full month name.
<span class="pre">%c</span> Locale’s appropriate date and time representation.
<span class="pre">%d</span> Day of the month as a decimal number [01,31].
<span class="pre">%H</span> Hour (24-hour clock) as a decimal number [00,23].
<span class="pre">%I</span> Hour (12-hour clock) as a decimal number [01,12].
<span class="pre">%j</span> Day of the year as a decimal number [001,366].
<span class="pre">%m</span> Month as a decimal number [01,12].
<span class="pre">%M</span> Minute as a decimal number [00,59].
<span class="pre">%p</span> Locale’s equivalent of either AM or PM.
<span class="pre">%S</span> Second as a decimal number [00,61].
<span class="pre">%U</span> Week number of the year (Sunday as the first day of the week) as a decimal number [00,53]. All days in a new year preceding the first Sunday are considered to be in week 0.
<span class="pre">%w</span> Weekday as a decimal number [0(Sunday),6].
<span class="pre">%W</span> Week number of the year (Monday as the first day of the week) as a decimal number [00,53]. All days in a new year preceding the first Monday are considered to be in week 0.
<span class="pre">%x</span> Locale’s appropriate date representation.
<span class="pre">%X</span> Locale’s appropriate time representation.
<span class="pre">%y</span> Year without century as a decimal number [00,99].
<span class="pre">%Y</span> Year with century as a decimal number.
<span class="pre">%z</span> Time zone offset indicating a positive or negative time difference from UTC/GMT of the form +HHMM or -HHMM, where H represents decimal hour digits and M represents decimal minute digits [-23:59, +23:59].
<span class="pre">%Z</span> Time zone name (no characters if no time zone exists).
<span class="pre">%%</span> A literal <span class="pre">'%'</span> character.

Thanks for Visit Here

Comments