How to print current date on python3?

From what I gather, here (for example), this should print the current year in two digits

print (datetime.strftime("%y"))

However, I get this error

TypeError: descriptor 'strftime' requires a 'datetime.date' object but received a 'str'

So I tried to this

print (datetime.strftime(datetime.date()))

to get

TypeError: descriptor 'date' of 'datetime.datetime' object needs an argument

so I placed "%y" inside of thr date() above to get

TypeError: descriptor 'date' requires a 'datetime.datetime' object but received a 'str'

Which start to seem really loopy and fishy to me.

What am I missing?


import datetime
now = datetime.datetime.now()

print(now.year)

The above code works perfectly fine for me.


The following seems to work:

import datetime
print (datetime.datetime.now().strftime("%y"))

The datetime.data object that it wants is on the "left" of the dot rather than the right. You need an instance of the datetime to call the method on, which you get through now()


I use this which is standard for every time

import datetime
now = datetime.datetime.now()
print ("Current date and time : ")
print (now.strftime("%Y-%m-%d %H:%M:%S"))