私は以下のようなクエリている:私は、 "マーチ" のような月の名前を表示したい(Django)月名の取得方法は?
3
:
today = datetime.datetime.now()
month = today.month
print month
をし、それが出力します。私は何をすべきか?
私は以下のようなクエリている:私は、 "マーチ" のような月の名前を表示したい(Django)月名の取得方法は?
3
:
today = datetime.datetime.now()
month = today.month
print month
をし、それが出力します。私は何をすべきか?
は、日付/時刻文字列フォーマット方法を使用します。
>>> today.strftime('%B')
'March'
詳細情報、および書式コードの完全なリストについては、参照the python datetime
docs
はあなたに男を感謝:) –
datetime.datetime.strftime(today, '%B') # Outputs 'March'
または
datetime.datetime.strftime(today, '%b') # Outputs 'Mar'
http://docs.python.org/library/datetime.html#strftime-strptime-behavior
使用のstrftime:
>>> today = datetime.datetime.now()
>>> today.strftime("%B")
'March'
>>>
Calendar APIは別のオプションです。
calendar.month_name[3] # would return 'March'
あなたのためにそれを行うだろうPythonのカレンダーモジュールは、だろうreverse dictionary
を作成するカレンダーにcalendar
を使用した
python
にMonth Number
およびその逆にcalendar.month_name
month = calendar.month_name[3]
Month Name
を見ますこれを行う合理的な方法:
dict((val,k) for k,v in enumerate(calendar.month_abbr))
英語のみ、あなたは、Python、例えばの日時文字列のフォーマット方法を使用することができますについて
>>> today.strftime('%B')
'March'
また、現在アクティブに言語で名前を返します。Djangoの方法を、使用することができます。 Djangoのテンプレートに
:Djangoのビュー関数で
{{ a_date|date('F') }}
:
from django.template.defaultfilters import date
date(a_date, 'F')
あなたは、例えばためジャンゴシェル(python manage.py shell
)の後半をテストすることができスペイン語:
In [1]: from django.utils.translation import get_language, activate
In [2]: activate('es')
In [3]: get_language()
Out[3]: 'es'
In [4]: import datetime
In [5]: today = datetime.date.today()
In [6]: from django.template.defaultfilters import date
In [7]: date(today, 'F')
Out[7]: u'Septiembre'
をありがとうございましたここで最も完全な答え:) – Florian
月名が必要なテンプレートページにカスタムテンプレートタグを登録するのに役立つカスタムテンプレートタグを登録して解決しました。
templatetags/etras。PY
from django import template
import calendar
register = template.Library()
@register.filter
def month_name(value):
return calendar.month_name[value]
テンプレートでの使用:彼らは考慮リクエストのロケールを取ることはありませんので、以下の回答の
{% load extras %}
{{ month_figure|month_name }}
なし私のために良いではない... – lvella