Похоже, вам нужно использовать locale module
Игра в оболочке:
$ date
Thu Jun 27 10:01:03 EDT 2019
$ LC_ALL=fr_FR.UTF-8 date
jeu. juin 27 10:01:12 EDT 2019
В питоне
$ LC_ALL=fr_FR.UTF-8 python
Python 2.7.5 (default, Jun 20 2019, 20:27:34)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from datetime import datetime
>>> datetime.now().strftime("%c")
'Thu Jun 27 10:03:13 2019'
Хм, я ожидал, что питон будет уважать мою среду. Давайте заставим проблему:
>>> import locale
>>> import os
>>> locale.setlocale(locale.LC_ALL, os.environ['LC_ALL'])
'fr_FR.UTF-8'
>>> datetime.now().strftime("%c")
'jeu. 27 juin 2019 10:04:48 '
Ах.
Читая немного дальше в документации по языку, я вижу
Первоначально, когда программа запускается, языковой стандарт - это языковой стандарт C, независимо от предпочтительного языкового стандарта пользователя. Программа должна явно сказать, что она хочет, чтобы пользовательские настройки локали пользователя вызывали setlocale(LC_ALL, '')
.