日付をjan 1,2012 - jan 31,2012 の形式で表示し、dateranges ['jan 1,2012 - jan 31 、2012年12月1日〜12月31日、2011年11月1日〜11月3日 '...' 2011年2月1日〜2月28日 'Pythonの日付形式jan 1,2012 - jan 31,2012
現在の月の数ヶ月前。 すべてのアイデア??? 助けてください!!!!!
日付をjan 1,2012 - jan 31,2012 の形式で表示し、dateranges ['jan 1,2012 - jan 31 、2012年12月1日〜12月31日、2011年11月1日〜11月3日 '...' 2011年2月1日〜2月28日 'Pythonの日付形式jan 1,2012 - jan 31,2012
現在の月の数ヶ月前。 すべてのアイデア??? 助けてください!!!!!
でここdatetimeとcalendarモジュールを使用したソリューションです:私はこれを実行すると
import calendar
import datetime
current = datetime.date.today().replace(day=1)
mylist = list()
for i in xrange(12):
rng = calendar.monthrange(current.year, current.month)
last = current.replace(day = rng[1])
mylist.append(current.strftime("%b 1, %Y") + " - " + last.strftime("%b %d, %Y"))
current = (current - datetime.timedelta(1)).replace(day=1)
print mylist
それは印刷します。あなたがすることによって行くの
['Jan 1, 2012 - Jan 31, 2012', 'Dec 1, 2011 - Dec 31, 2011', 'Nov 1, 2011 - Nov 30, 2011', 'Oct 1, 2011 - Oct 31, 2011', 'Sep 1, 2011 - Sep 30, 2011', 'Aug 1, 2011 - Aug 31, 2011', 'Jul 1, 2011 - Jul 31, 2011', 'Jun 1, 2011 - Jun 30, 2011', 'May 1, 2011 - May 31, 2011', 'Apr 1, 2011 - Apr 30, 2011', 'Mar 1, 2011 - Mar 31, 2011', 'Feb 1, 2011 - Feb 28, 2011']
これはハックのビットですが、うまくいけば、誰かがあなたのより良い方法を表示することができます。
その多くの日が期間内に存在していないので、あなたが力ずくですべての日付を作り出すことができる:
import datetime
for year in range(2011,2013):
for month in range(1,13):
for day in range(28,32):
try:
_date=datetime.date(year,month,day)
except ValueError:
print month,day
output:
2 29
2 30
2 31
4 31
6 31
9 31
11 31
2 30
2 31
4 31
6 31
9 31
11 31
基本的にこのブルートフォース方法を使用すると、毎月の最大日付を計算することができます。
私はこう提案しています: このような手法を使用すると、毎月の最大日付を表す日付オブジェクトのリストを作成できます。
各月の最初の日のリストを作成します。
>>> datetime.date.today().strftime("%a")
'Fri'
:二つのリスト
はstrftimeの方法
などを使用して、日付範囲を印刷し、あなたはzip形式のリストから取得した各ペアの二つのリスト
ジップ
ソート
http://docs.python.org/library/time.htmlのページの途中に、strftimeを渡すべきものが表示されます。 「%」の例
はこの十分ですか?あなたが私の答えを洗練させたいのですか? –
こんにちは、ロバート::多くのポストのおかげで..それは助け.. – Alchemist777
いい、私はcalendar.monthrangeメソッドを見たことがなかった前に。 +1 –
こんにちはsrgerg ... post.Thisのための多くのおかげで、私が探していたものとまったく同じだった... – Alchemist777