ホームページ >バックエンド開発 >Python チュートリアル >Python の日付と時刻
Python プログラムはさまざまな方法で日付と時刻を処理できます。日付形式の変換は、一般的な日常的な作業です。 Python には、役立つ時刻とカレンダーのモジュールがあります。
ダニとは何ですか?
時間間隔は秒単位の浮動小数点数です。
各タイムスタンプは、1970 年 1 月 1 日の午前 0 時 (エポック) からの経過時間を表します。
Python に付属する一般的な time モジュールには、一般的な日付形式を変換するための関数が多数あります。たとえば、関数 time.time() は、次の例に示すように、ティックを使用して、1970 年 1 月 1 日午前 12 時 (エポック) から記録された現在のオペレーティング システム時刻を返します。 !/usr/bin /python
import time;
上記の出力結果の例:
1970 年 1 月 1 日午前 12 時からのティック数: 7186862.73399
ティック単位は日付計算に最適です。ただし、1970 年より前の日付はこの方法では表現できません。遠すぎる日付は機能しません。UNIX と Windows は 2038 年の日付のみをサポートします。
時間タプルとは何ですか?
多くの Python 関数は、1 つの要素を使用して 9 つの数値グループを組み立てます。 処理時間:
シリアル番号
フィールド
値
0 4桁の年 2008
1 月 1 から 12
2 DAY 1~31
3時間 0~23
4分
5秒 0~61(60または61はうるう秒)
6 曜日 0~6(0は月曜日)
7の1年 1 日から 366 日 (ユリウス暦)
8 夏時間 -1、0、1、-1 は夏時間かどうかを決定するフラグです
上記、つまり struct_time タプルです。この構造には次の属性があります:
シリアル番号
属性
値
0 tm_year 2008
1 tm_mon 1〜12
2 tm _mday 1〜31
3時 0〜23時
4 tm_min 0 ~ 59
5 tm_sec 0 ~ 61 (60 または 61 はうるう秒)
6 tm_wday 0 ~ 6 (0 は月曜日)
7 tm_yday 1 ~ 366 (ユリウス暦)
8 tm_isdst -1 、0、1、-1は夏時間かどうかを決定するフラグです
現在時刻を取得します
浮動小数点数を返す時刻削除メソッドから時刻タプルに変換します。ポイント番号は localtime などの関数に渡されます。 S#!/USR/Bin/Python
import Time;
上記の例の出力結果:
Local current time : time.struct_time(tm_year=2013, tm_mon=7,
) tm_mday = 17、tm_hour = 21、tm_min = 26、tm_sec = 3、tm_wday = 2、tm_yday = 198、tm_isdst = 0)ただし、読み取り可能な時間パターンを取得する最も単純な関数は asctime( : ", localtime
上記の出力結果の例:
Local current time : Tue Jan 13 10:17:09 2009
特定の月のカレンダーを取得します
カレンダー このモジュールには、特定の月の月間カレンダーを印刷するなど、年間および月間カレンダーを処理する幅広いメソッドがあります:
#!/usr/bin/python
カレンダーをインポート
cal = Calendar.month(2008, 1)
print "これがカレンダーです:"
print cal;
上記の出力結果の例:
カレンダーは次のとおりです:
January 2008
Mo Tu We Th Fr Sa Su
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Timeモジュール
Timeモジュールには以下のビルドが含まれています-in 時刻処理と時刻形式変換の両方の関数:
シリアル番号
関数と説明
1 time.altzone
グリニッジ以西の夏時間地域のオフセット秒を返します。エリアがグリニッジより東(英国を含む西ヨーロッパなど)の場合、負の値が返されます。夏時間が有効になっている地域でのみ利用できます。
2 time.asctime([tupletime])
時刻タプルを受け入れ、「火曜日、12 月 11 日 18:07:14 2008」(2008 年 12 月 11 日火曜日 18:07:14) という 24 文字の可読形式を返します。弦。
3 time. Clock( )
浮動小数点数として計算された現在の CPU 時間を秒単位で返します。これはさまざまなプログラムの消費時間を測定するために使用され、time.time() よりも便利です。
6 time.localtime([secs])
7 time.mktime(tupletime)
8 time.sleep(secs)
9 time.strftime(fmt[,tupletime])
10 time.strptime(str,fmt='%a %b %d %H:%M:%S %Y')
11 time.time( )
12 time.tzset()
Time モジュールには、次の 2 つの非常に重要な属性が含まれています:
属性 time.timezone は、ローカル タイム ゾーン (夏時間なし) 間の距離です。およびグリニッジオフセット秒 (>0、南北アメリカ、
2 time.tzname
time.tzname 属性には、状況に応じて異なる文字列のペアが含まれています。これは、夏時間ありまたはなしのローカル タイム ゾーン名です。カレンダーモジュール
マルチ形式で年を返します-line string 形式 年間カレンダー、1 行あたり 3 か月、間隔距離は c です。 毎日の幅の間隔は w 文字です。各線の長さは 21* W+18+2* C です。 l は 1 週間あたりの行数です。
2 Calendar.firstweekday( )
現在の週の開始日の設定を返します。デフォルトでは、caendar モジュールが最初にロードされるとき (月曜日) に 0 が返されます。
3 Calendar.isleap(year)
4 Calendar.leapdays(y1,y2)
5 Calendar.month(year,month,w=2,l=1)
6 Calendar.monthcalendar(year,month)
7 Calendar.monthrange(年,月)
8 Calendar.prcal(year,w=2,l=1,c=6)
9 Calendar.prmonth(year,month, w =2,l=1)
10 Calendar.setfirstweekday(weekday)
各週の開始日コードを設定します。 0(月曜日)から6(日曜日)まで。
11 Calendar.timegm(tupletime)
は time.gmtime の逆です。時間タプル形式を受け入れ、その時点の時刻 (1970 エポックから経過した浮動小数点の秒数) を返します。
12 Calendar.weekday(年,月,日)
指定された日付の日付コードを返します。 0(月曜日)から6(日曜日)まで。月の範囲は 1 (1 月) から 12 (12 月) までです。