curriculum/challenges/english/blocks/daily-coding-challenges-python/69162d64f96574d9bb629f03.md
Given a date in the format "Month day, year", return the date in the format "YYYY-MM-DD".
"January", "February", etc.For example, given "December 6, 2025", return "2025-12-06".
format_date("December 6, 2025") should return "2025-12-06".
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(format_date("December 6, 2025"), "2025-12-06")`)
}})
format_date("January 1, 2000") should return "2000-01-01".
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(format_date("January 1, 2000"), "2000-01-01")`)
}})
format_date("November 11, 1111") should return "1111-11-11".
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(format_date("November 11, 1111"), "1111-11-11")`)
}})
format_date("September 7, 512") should return "512-09-07".
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(format_date("September 7, 512"), "512-09-07")`)
}})
format_date("May 4, 1950") should return "1950-05-04".
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(format_date("May 4, 1950"), "1950-05-04")`)
}})
format_date("February 29, 1992") should return "1992-02-29".
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(format_date("February 29, 1992"), "1992-02-29")`)
}})
def format_date(date_string):
return date_string
def format_date(date_string):
months = {
"January": "01",
"February": "02",
"March": "03",
"April": "04",
"May": "05",
"June": "06",
"July": "07",
"August": "08",
"September": "09",
"October": "10",
"November": "11",
"December": "12"
}
month, day, year = date_string.replace(",", "").split(" ")
day = day.zfill(2)
return f"{year}-{months[month]}-{day}"