I am using an API that requires date inputs to come in the form 'YYYY-MM-DD'
- and yes, that's a string.
I am trying to write an iterative program that will cycle through some temporal data. The interval will always be one month.
Is there a nice way to convert a Python date object into the given format? I considered treating the year, month and day as integer inputs and incrementing the values as needed, but that's rather inelegant and requires significant if\elif\...\else
programming.
Use the strftime()
function of the datetime object:
import datetime
now = datetime.datetime.now()
date_string = now.strftime('%Y-%m-%d')
print(date_string)
Output
'2016-01-26'
Yes, there is already a module to handle this. See
https://docs.python.org/2/library/datetime.html
Specifically,
date.isoformat()
Which Returns a string representing the date in ISO 8601 format, ‘YYYY-MM-DD’.
For example, date(2002, 12, 4).isoformat() == '2002-12-04'.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With