Python
 Computer >> コンピューター >  >> プログラミング >> Python

PythonのTimeTuple(時間タプル)とは?9つの要素とstruct_time属性を徹底解説

Pythonの多くの時刻関連関数は、時刻を9つの数値からなるタプルとして扱います。これがいわゆる「TimeTuple(時間タプル)」です。各要素には決まった順序と意味があり、年月日や時分秒に加えて、曜日や夏時間の情報まで含まれています。

TimeTupleの9つの要素

TimeTupleの各インデックスに対応するフィールドと、取り得る値は以下の通りです。

インデックスフィールド値の範囲
04桁の西暦(年)例:2008
11〜12
21〜31
30〜23
40〜59
50〜61(60と61はうるう秒)
6曜日0〜6(0は月曜日)
7年内の通算日(ユリウス日)1〜366
8夏時間(DST)フラグ-1、0、1(-1はライブラリが自動判定)

struct_time構造体との関係

このタプルは、Pythonのstruct_time構造体と同等です。struct_timeは名前付きの属性を持っており、インデックス番号だけでなく、属性名を使っても同じ値にアクセスできます。対応する属性は以下の通りです。

インデックス属性名値の範囲
0tm_year例:2008
1tm_mon1〜12
2tm_mday1〜31
3tm_hour0〜23
4tm_min0〜59
5tm_sec0〜61(60と61はうるう秒)
6tm_wday0〜6(0は月曜日)
7tm_yday1〜366(ユリウス日)
8tm_isdst-1、0、1(-1はライブラリが自動判定)

具体的な使用例

たとえばtime.localtime()を呼び出すと、現在時刻を表すstruct_timeオブジェクトが返されます。

import time

now = time.localtime()
print(now.tm_year)  # 例:2024
print(now.tm_mon)   # 月(1〜12)
print(now[0])       # インデックスでもアクセス可能

このように、TimeTuple(struct_time)はPythonで時刻を扱う際の基本的なデータ形式であり、time.mktime()time.strftime()など、さまざまな時刻関数の入力・出力として利用されます。

  1. PythonのCGIとは?仕組みとサーバー設定方法をわかりやすく解説

    CGI(Common Gateway Interface:共通ゲートウェイインターフェース)は、HTTPサーバーなどの情報サーバーと外部のゲートウェイプログラムがやり取りするための標準規格です。現在のバージョンはCGI/1.1であり、CGI/1.2が策定中です。Webブラウジングの流れCGIの概念を理解するために、ハイパーリンクをクリックして特定のWebページやURLを閲覧するときに何が起こるのかを見てみましょう。ブラウザがHTTP Webサーバーに接続し、URL(つまりファイル名)を要求します。WebサーバーはURLを解析してファイル名を探します。該当するファイルが見つかればそれをブラウザへ

  2. Pythonの「%」演算子とは?文字列フォーマットの基本と使い方を解説

    Pythonの「%」演算子の役割 Pythonにおける「%(パーセント)」は、文字列フォーマット演算子(補間演算子)として機能します。「format % values」という形式で記述すると、フォーマット文字列内の変換指定子が、values側の要素によって置き換えられます。この仕組みは、C言語のsprintf()関数とよく似ています。 基本的な使い方:文字列の埋め込み 最もシンプルな例は、文字列の中に変数の値を埋め込むケースです。 >>> lang = Python >>> print %s is awesome! % lang Python is awe