创建一个返回法语日期或英语日期的函数

时间:2017-03-28 18:06:30

标签: python date

我创建了一个函数language,它返回EnglishFrench。我想创建一个现在基于选择语言给出日期的函数。例如,如果我选择French,则该函数将返回Jeudi, 28 mars 2017,或者如果我选择English,则会返回Tuesday March 28 2017

@property
def date_customerprofile(self):
    now = datetime.date.today()
    if language == 'English'
        date = now.strftime("%A, %B %d %Y")
    else:
        date = ...

任何人都可以帮我完成此功能以获得这样的结果吗?

谢谢!

PS 了解法语月份为JanvierFévrierMarsAvrilMai,{{1 }},JuinJuilletAoûtSeptembreOctobreNovembre。星期几是Décembre(星期日),DimancheLundiMardiMercrediJeudiVendredi

1 个答案:

答案 0 :(得分:1)

首先,您需要在系统上安装必需的区域设置。 要让ubuntu安装法语区域设置,请运行以下命令。

$ sudo locale-gen fr_FR.utf8

以下是问题的解决方案

from datetime import datetime
import locale

def set_locale(locale_):
    locale.setlocale(category=locale.LC_ALL, locale=locale_)


def date_customerprofile(language):
    now_ = datetime.today()
    if language == 'English':
        set_locale('en_US.utf8')
        date_ = now_.strftime("%A %B %d %Y")
    else:
        set_locale('fr_FR.utf8')
        date_ = now_.strftime("%A %B %d %Y")
    return date_

P.S。避免使用标准包/函数名作为变量