Формат строки в формате ДД / ММ / ГГГ в Python - португальский

Я хотел бы преобразовать строку "23/02/2018" в формат даты как 23 февраля 2018 года.

Наиболее важным является то, что месяц должен быть на португальском языке, ссылаясь на fevereiro.

Моя проблема в том, что обычно datetime.date печатается как (ГГГГ, ММ, ДД):

import datetime 
datestr = "23/02/2018" 
dateobj = datetime.datetime.strptime(datestr, "%d/%m/%Y")
print dateobj #year, month, day

Как я могу печатать из строки 23/10/2017 в формате даты 23-го-2017, ссылаясь на месяц "outubro" на португальском языке?

1 ответ

Решение

Используйте модуль локали.

import locale
import datetime

locale.setlocale(locale.LC_ALL, 'pt_pt.UTF-8')
datetime.datetime.strptime('23/10/2017', '%d/%m/%Y').strftime('%d/%B/%Y')
# '23/Outubro/2017'
datetime.datetime.strptime('23/10/2017', '%d/%m/%Y').strftime('%d/%b/%Y')
# '23/Out/2017'
Другие вопросы по тегам