Python--timeモジュール

6206 ワード

記事の転載先:http://qinxuye.me/article/details-about-time-module-in-python/
通常のコードでは、私たちは常に時間と付き合う必要があります.Pythonでは,時間処理に関するモジュールとしてtime,datetime,calendarがある.この文章は、主にtimeモジュールについて説明します.
始める前に、まずこの点を説明します.
  • Pythonでは、通常、時間:1)タイムスタンプ2)がフォーマットされた時間文字列3)メタグループ(struct_time)の9つの要素を表す方法がある.Pythonのtimeモジュールは、主にCライブラリを呼び出すため、プラットフォームによって異なる場合があります.
  • UTC(Coordinated Universal Time、世界協調時)はグリニッジ天文時間、世界標準時間である.中国ではUTC+8です.DST(Daylight Saving Time)はサマータイムです.
  • タイムスタンプの方式:通常、タイムスタンプは1970年1月1日00:00:00から秒単位で計算されるオフセット量を表します.「type(time.time()」を実行し、floatタイプを返します.タイムスタンプ方式を返す関数は主にtime(),clock()などである.
  • タプル方式:struct_timetimeメタグループには9つの要素があり、struct_を返します.timeの関数は主にgmtime(),localtime(),strptime()である.この方法のメタグループのいくつかの要素を以下に示す:
  •  
     
    インデックス(Index)
    属性(Attribute)
    値(Value)
    0
     tm_year(年)
    例えば2011
    1
     tm_mon(月)
     1 - 12
    2
     tm_mday(日)
     1 - 31
    3
     tm_义齿
     0 - 23
    4
     tm_min(分)
     0 - 59
    5
     tm_sec(秒)
     0 - 61
    6
     tm_wday(weekday)
    0-6(0は月曜日)
    7
     tm_yday(1年目の数日目)
     1 - 366
    8
     tm_isdst(サマータイムかどうか)
    黙認-1
    次にtimeモジュールでよく使用されるいくつかの関数について説明します.
    1)time.localtime([secs]):タイムスタンプを現在のタイムゾーンのstruct_に変換time.secsパラメータが提供されていない場合は、現在の時間に準じます.
    >>> time.localtime() time.struct_time(tm_year=2011, tm_mon=5, tm_mday=5, tm_hour=14, tm_min=14, tm_sec=50, tm_wday=3, tm_yday=125, tm_isdst=0) >>> time.localtime(1304575584.1361799) time.struct_time(tm_year=2011, tm_mon=5, tm_mday=5, tm_hour=14, tm_min=6, tm_sec=24, tm_wday=3, tm_yday=125, tm_isdst=0)
    2)time.gmtime([secs]):localtime()メソッドと同様に、gmtime()メソッドは、タイムスタンプをUTCタイムゾーン(0タイムゾーン)に変換するstruct_time.
    >>>time.gmtime() time.struct_time(tm_year=2011, tm_mon=5, tm_mday=5, tm_hour=6, tm_min=19, tm_sec=48, tm_wday=3, tm_yday=125, tm_isdst=0)
    3)time.time():現在のタイムスタンプを返します.
    >>> time.time()  1304575584.1361799
    4)time.mktime(t):struct_を1つtimeはタイムスタンプに変換されます.
    >>> time.mktime(time.localtime()) 1304576839.0
    5)time.sleep(secs):スレッドは指定した時間の実行を遅らせる.秒単位です.
    6)time.clock():これは、異なるシステムで意味が異なることに注意する必要があります.UNIXシステムでは、秒で表される浮動小数点数(タイムスタンプ)を返す「プロセス時間」を返します.WINDOWSでは、最初に呼び出され、プロセスが実行された実際の時間を返します.2回目以降の呼び出しは、1回目の呼び出し以降から現在までの実行時間です.(実際にはWIN 32上のQueryPerformance Counter()をベースにしており、ミリ秒よりも正確に表示されています)
    ?
    1 2 3 4 5 6 7 8 import time  if __name__ = = '__main__'      time.sleep( 1      print "clock1:%s" % time.clock()       time.sleep( 1      print "clock2:%s" % time.clock()       time.sleep( 1      print "clock3:%s" % time.clock()
    実行結果:
    clock1:3.35238137808e-006  clock2:1.00004944763  clock3:2.00012040636
    ここで、1番目のclock()が出力するのは、プログラム実行時間の2番目、3番目のclock()が出力するのは、いずれも1番目のclockとの時間間隔である
    7)time.asctime([t]):時間を表すメタグループまたはstruct_timeはこの形式で表される:'Sun Jun 20 23:21:05 1993'である.パラメータがない場合はtime.localtime()はパラメータとして入力されます.
    >>> time.asctime() 'Thu May 5 14:55:43 2011'
    8)time.ctime([secs]):タイムスタンプ(秒で計算する浮動小数点数)をtimeに変換する.asctime()の形式.パラメータが与えられていない場合、またはNoneの場合、timeがデフォルトになります.time()はパラメータです.その役割はtimeに相当する.asctime(time.localtime(secs)).
    >>> time.ctime() 'Thu May 5 14:58:09 2011' >>> time.ctime(time.time()) 'Thu May 5 14:58:39 2011' >>> time.ctime(1304579615) 'Thu May 5 15:13:35 2011'
    9)time.strftime(format[,t]):時間を表すメタグループまたはstruct_time(time.localtime()およびtime.gmtime()は、フォーマットされた時間文字列に変換されます.tが指定されていない場合、timeが入力.localtime().メタグループのいずれかの要素が境界を越えている場合、ValueErrorのエラーが投げ出されます.
    書式設定
    意味
    コメント
    %a
    ローカル(locale)曜日名の簡略化
     
    %A
    ローカルフルタイム曜日名
     
    %b
    月名のローカル簡略化
     
    %B
    ローカル完全月名
     
    %c
    ローカルに対応する日付と時刻の表示
     
    %d
    1か月の日付(01-31)
     
    %H
    1日の数時間目(24時間制、00-23)
     
    %I
    数時間目(12時間制、01-12)
     
    %j
    1年の日付(001-366)
     
    %m
    月(01-12)
     
    %M
    分(00~59)
     
    %p
    ローカルamまたはpmの対応する文字
    1
    %S
    秒(01-61)

    %U
    1年間の曜日.△00~53日は1週間の始まりです.最初の日曜日までのすべての日数は0週目にします.

    %w
    1週間の何日目(0-6、0は日曜日)

    %W
    %Uとほぼ同じで、違いは%Wが月曜日を1週間の始まりとすることです.
     
    %x
    ローカル対応日
     
    %X
    ローカル対応時間
     
    %y
    世紀を除いた年(00-99)
     
    %Y
    完全な年
     
    %Z
    タイムゾーンの名前(空の文字が存在しない場合)
     
    %%
    '%'文字
     
    コメント:
  • "%p"は"%I"と併用してのみ効果があります.
  • 文書では、59ではなく0-61であることが強調されており、閏年秒は2秒(汗1個)を占めています.
  • strptime()関数を使用する場合、この年の週数および日数が決定された場合にのみ、%Uおよび%Wが計算されます.

  • 例を挙げます.
    >>> time.strftime("%Y-%m-%d %X", time.localtime()) '2011-05-05 16:37:06'
    10)time.strptime(string[,format]):フォーマットされた時間文字列をstruct_に変換time.実際にはstrftime()とは逆操作です.
    >>> time.strptime('2011-05-05 16:37:06', '%Y-%m-%d %X') time.struct_time(tm_year=2011, tm_mon=5, tm_mday=5, tm_hour=16, tm_min=37, tm_sec=6, tm_wday=3, tm_yday=125, tm_isdst=-1)
    この関数では、formatのデフォルトは「%a%b%d%H:%M:%S%Y」です.
    最後にtimeモジュールについてまとめます.前述したように、Pythonでは3つの表現があります.1)timestamp 2)tupleまたはstruct_time 3)文字列をフォーマットします.
    図のように変換されます.
    Python--time模块_第1张图片
    詳細については、timeモジュールの公式ドキュメントを参照してください.
    ここでは、以下を参照してください.http://qlj.sh.cn/python/20100402/python-time/作者の原文の住所は今訪問することができなくて、個人はこれと比較的に似ていると感じますhttps://www.tutorialspoint.com/python/python_date_time.htm)