Pythonタイムモジュールを学ぶ方法

時間モジュールには、主に日付と時刻の関数を提供するさまざまなクラスと関数が含まれています。このモジュールは、日付と時刻を文字列にフォーマットする機能だけでなく、文字列から日付と時刻を回復する機能も提供します。

Pythonインタラクティブインタープリターにtimeモジュールをインポートし、[e for e in dir(time)if not e.startswith( '_')]コマンドを入力して、モジュールに含まれるすべての属性と関数を表示します。 :

[ e for e indir(time)if not e.startswith('_')]['altzone','asctime','clock','ctime','daylight','get_clock_info','gmtime','localtime','mktime','monotonic','perf_counter','process_time','sleep','strftime','strptime','struct_time','time','timezone','tzname']

time.struct_timeクラスはtimeモジュールで提供されます。このクラスは時間オブジェクトを表します。主に9つの属性が含まれています。各属性の情報を次の表に示します。

表1time.struct_timeクラスの各属性の意味

フィールド名 フィールドの意味
tm_year year 2017、2018など
tm_mon 2、3など。範囲は1〜12
tm_mday Day 2、3など、範囲は1〜31
tm_hour Hour 2、3など、範囲は0〜23
tm_min minutes 2、3など、範囲は0〜59
tm_sec seconds 2、3など、範囲は0〜59
tm_wday week 月曜日は0、範囲は0〜6
tm_yday 1年の年の日 たとえば、65、範囲1〜366
tm_isdst 昼光節約時間 0、1、または-1

たとえば、Pythonはtime.struct_time(tm_year = 2018、tm_mon = 5、tm_mday = 2、tm_hour = 8、tm_min = 0、tm_sec = 30、tm_wday = 3、tm_yday = 1、tm_isdst = 0)を使用して時間を明確に表すことができます。 。

さらに、Pythonは、時間を表すために9つの要素を含むタプルを使用することもできます。このタプルの9つの要素は、struct_timeオブジェクトの9つの属性と1対1で対応しています。たとえば、プログラムは(2018、5、2、8、0、30、3、1、0)を使用して時間を表すことができます。

日付と時刻モジュールで一般的に使用される関数は次のとおりです。

time.asctime([t]):タイムタプルまたはstruct_timeをタイムストリングに変換します。パラメータtが指定されていない場合、現在の時刻がデフォルトで変換されます。

time.ctime([secs]):秒で表される時間を時間文字列に変換します。

time.gmtime([secs]):秒で表される時間をstruct_timeオブジェクトに変換します。パラメータが渡されない場合は、現在の時刻が使用されます。

time.localtime([secs]):秒で表される時間を現在の時刻を表すstruct_timeオブジェクトに変換します。パラメータが渡されない場合は、現在の時刻が使用されます。

time.mktime(t):これはlocaltimeの逆関数であり、struct_timeオブジェクトまたはタプルによって表される時間を1970年1月1日の0:00から経過した秒数に変換するために使用されます。

time.perf_counter():パフォーマンスカウンターの値を返します。すぐに。

time.process_time():現在のプロセスがCPUを使用している時間を返します。すぐに。

time.sleep(secs):数秒間一時停止し、何もしません。

time.strftime(format [、t]):タイムタプルまたはstruct_timeオブジェクトを指定された形式のタイムストリングにフォーマットします。パラメータtが指定されていない場合、現在の時刻がデフォルトで変換されます。

time.strptime(string [、format]):文字列フォーマットの時間をstruct_timeオブジェクトに解析します。

time.time():1970年1月1日の0:00から経過した秒数を返します。

time.timezone:ローカルタイムゾーンのタイムオフセットを秒単位で返します。

time.tzname:ローカルタイムゾーンの名前を返します。

次のプログラムは、時間ブロックの機能を示しています。

import time
# 現在の時刻を時間文字列に変換する
print(time.asctime())
# 指定された時間を時間文字列に変換します。時間タプルの最後の3つの要素は設定されません
print(time.asctime((2018,2,4,11,8,23,0,0,0))) # Mon Feb 411:08:232018
# 秒で表される時間を時間文字列に変換します
print(time.ctime(30)) # Thu Jan 108:00:301970
# 秒で表される時間を構造化に変換します_時間オブジェクト。
print(time.gmtime(30))
# 現在の時刻を構造に変換する_時間オブジェクト。
print(time.gmtime())
# 秒数で表される時間を現在の時間を表す構造に変換します_時間オブジェクト
print(time.localtime(30))
# タプル形式の時間を秒で表される時間に変換します
print(time.mktime((2018,2,4,11,8,23,0,0,0))) # 1517713703.0
# パフォーマンスカウンターの値を返します
print(time.perf_counter())
# 現在のプロセスで使用されているCPU時間を返します
print(time.process_time())
# time.sleep(10)
# 現在の時刻を指定された形式の文字列に変換します
print(time.strftime('%Y-%m-%d %H:%M:%S'))
st ='2018年3月20日'
# 指定した時間文字列を復元して構造化する_時間オブジェクト。
print(time.strptime(st,'%Y年%m月%d日'))
# 1970年1月1日の0:00から経過した秒数を返します。
print(time.time())
# ローカルタイムゾーンのタイムオフセットを秒単位で返します
print(time.timezone) #中国の東馬地区に輸出-28800

上記のプログラムを実行すると、次の出力が表示されます。

Fri Feb 2211:28:392019
Mon Feb 411:08:232018
Thu Jan 108:00:301970
time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=30, tm_wday=3, tm_yday=1, 
tm_isdst=0)
time.struct_time(tm_year=2019, tm_mon=2, tm_mday=22, tm_hour=3, tm_min=28, tm_sec=39, tm_wday=4, tm_yday=53, 
tm_isdst=0)
time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=0, tm_sec=30, tm_wday=3, tm_yday=1, 
tm_isdst=0)1517713703.00.00.1406252019-02-2211:28:39
time.struct_time(tm_year=2018, tm_mon=3, tm_mday=20, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=1, tm_yday=79, 
tm_isdst=-1)1550806119.4960592-28800

タイムモジュールの2つの関数strftime()とstrptime()は互いに逆の関数であり、strftime()はstruct_timeオブジェクトまたはタイムタプルをタイムストリングに変換するために使用され、strptime()関数はタイムストリングを変換するために使用されます。これはstruct_timeオブジェクトです。どちらの関数もフォーマットテンプレートの記述を含みます。たとえば、上記のプログラムでは、%Yは年、%mは月、%dは日、%Hは時、%Mは分、%Sは秒を表します。これら2つの関数に必要な時間形式文字列でサポートされているコマンドを次の表に示します。

指示 意味
%a Sun for Sundayなど、曜日のローカライズされた省略名
%A ローカライズされた曜日のフルネーム
%b 1月の1月など、月のローカライズされた省略名
%B ローカライズされた月のフルネーム
%c ローカライズされた日付と時刻の表現
%d はその月の日の値を表します、Fan Gu:01〜31
%H 24時間システムの時間を表し、範囲:00〜23
%I 12時間の時計で時間を表し、範囲:01〜12
%j 年の日、範囲:001〜366
%m は月の値を表し、範囲:01〜12
%M は分の値を表し、範囲:00〜59
%p 朝または午後のローカリゼーション。 strptime()関数を使用し、%I命令を使用して時間を解析する場合、%pは時間フィールドにのみ影響します
%S は分の値を表し、範囲は00〜61です。範囲は確かに00〜61であり、60は飛躍秒のタイムスタンプを表す場合に有効であり、61はいくつかの歴史的な理由によって引き起こされます
%U は、年の最初の数週間を表し、日曜日を週の最初の日とし、00から53の範囲です。このように、その年の最初の日曜日は最初の週と見なされます。 strptime()関数を使用して時間文字列を解析する場合、コマンドは曜日と年の両方が同時に指定されている場合にのみ有効になります
%w は曜日の数値を表し、範囲は0〜6です。0は日曜日を表します
%W は、年の最初の数週間を表し、月曜日が週の最初の日であり、範囲は00から53です。このように、その年の最初の月曜日は最初の週と見なされます。 strptime()関数を使用して時間文字列を解析する場合、コマンドは曜日と年の両方が同時に指定されている場合にのみ有効になります
%x ローカライズされた日付表現
%X ローカライズされた時間表現
%y 年の省略形、範囲:00〜99、たとえば、2018は18と省略されます
%Y 今年の完全な形式。 2018など
%z タイムゾーンオフセットを表示
%Z タイムゾーン名(タイムゾーンが利用できない場合は空になります)
%% %記号を表すために使用されます

ナレッジポイントの拡張:

タイムモジュール

このモジュールは、さまざまな時間関連の機能を提供します。関連する機能については、datetimeおよびcalendaratモジュールを参照してください。

このモジュールは、すべてのプラットフォームですべての機能を提供するわけではなく、プラットフォームによって異なります

以下は、いくつかの用語と規則の説明です

上記は、Pythonタイムモジュールの詳細を学ぶ方法です。Pythonタイムモジュールの詳細については、ZaLou.Cnの他の関連記事に注意してください。

Recommended Posts

Pythonタイムモジュールを学ぶ方法
pythonモジュールを表示する方法
pythonをすばやく学ぶ方法
ダウンロードしたモジュールをpythonでインストールする方法
pythonプログラムを保存する方法
Pythonはjsonモジュールをどのように処理しますか
CentOSサーバー時間を北京時間に変更する方法
Pythonでzip関数を使用する方法
Pythonはemailモジュールを使用してメールを送信します
pythonでformat関数を使用する方法
コマンドラインからpythonを入力する方法
pythonを使用してhostsファイルを切り替える方法
CentOSサーバー時間を北京時間に変更する方法
Pythonコードをまとめて正しく移動する方法
pythonコードにコメントする方法
Ubuntu14.04のNginxにgzipモジュールを追加する方法
pythonファイルが書かれた後に練習する方法
pythonオブジェクトを理解する方法
パイソンタプルの使い方
pythonはモジュールのインストールが完了したとどのように判断しますか
Pythonはreモジュールを使用して危険な文字を検証します
自分でpythonを学ぶのにどれくらい時間がかかりますか?
pythonで円の領域を見つける方法
Ubuntu20.04でタイムゾーンを設定または変更する方法
Ubuntu20.04でタイムゾーンを設定または変更する方法
CentOS8でタイムゾーンを設定または変更する方法
pythonウェブページコードの表示方法
Pythonがメール機能を実装する方法
pythonはどのように環境を変えますか
python設定ファイルの書き方
pythonコードでラップする方法
Pythonで括弧を省略する方法
CentOS8にPython3.8をインストールする方法
Ubuntu18.04にPython3.8をインストールする方法
pythonでクラスを書く方法
pythonで数値をフィルタリングする方法
CentOS8にPythonをインストールする方法
python dict garbledを解決する方法
pythonでエラーを表示する方法
pythonでreturnを書く方法
Pythonがタイマー機能を実装する方法
Pythonで変数を理解する方法
pythonで変数をクリアする方法
pythonオブジェクト指向プログラミングを理解する方法
pythonクローラーは簡単に習得できますか
PythonでSQLiteを使用する方法
Python3モジュール
pythonインタラクティブモードの基本を学ぶ
pythonのインストールが成功したことを確認する方法
Pythonで地球を作る方法
およびおよびまたはPythonでの使用方法
python Doubanは、pipを置き換えてpythonモジュールをインストールします
pythonでキャッシュファイルを削除する方法
Pythonでサードパーティモジュールを導入する方法
pythonはどのように計算速度を向上させますか
pythonでnull値を表す方法
pythonでテキストファイルを保存する方法
パスワードの強度を判断するためのPython文字列
PYTHONを使用してニュース記事をクロールする方法
Python初心者は、標準のライブラリモジュールの命名を学びます
pythonでwinプログラムを書く方法