コーディングに時間の問題が絡むと、いつもタイムゾーンの問題に混乱しがちですが、私はいつも試行錯誤して対処してきましたが、今日ようやくその理由が分かり、心の中の問題が解決しました。
Pythonのタイムゾーンの問題
datetime.today() / datetime.now()
これら2つの関数は現在のシステム時刻を取得しますが、取得したdatetimeオブジェクトのtzinfoは、システム時刻に設定されている場合でも空です。ゾーン。
datetime.utcnow()
この関数は、現在のシステム時間とタイムゾーンに基づいて計算される現在の UTC 時間を取得します。
たとえば、システム時間が 14:00、タイムゾーンがアジア/上海 (北京時間) の場合、utcnow の戻り時間は 6:00 です。同様に、結果として得られるオブジェクトの tzinfo は空です。
上記の関数に対する環境変数 TZ の影響:
環境変数 TZ がシステムで設定されている場合、または os.environ['TZ'] が Python で設定されている場合、上記の関数によって取得される時間は TZ ですタイムゾーンに対応する時刻。実際には、TZ はこれらの機能ではなく、date コマンドの戻り結果からわかるようにシステム時刻に影響を与えると考えられます。 datetime.now() と date コマンドによって返される結果は常に一貫しています。
Django のタイムゾーン問題
Python の上記の関数を理解すると、Django のタイムゾーン問題は簡単に見えます。
djangoの設定には、プログラムで使用するタイムゾーンを設定するTIME_ZONEという設定があります。
Django のドキュメントから、TIME_ZONE の機能は os.environ['TZ'] を変更することであることがわかりましたが、os.environ['TZ'] を変更してもシステム環境変数 TZ は変更されません。したがって、TIME_ZONE が設定されている場合。システムのタイムゾーン設定が不一致の場合、プログラム中のdatetime.now()で取得される時刻とdateコマンドの時刻が不一致になります。
したがって、TIME_ZONE はプログラムが使用したいタイムゾーンに設定する必要があります。ローカル プログラムの場合は、TIME_ZONE を国際アプリケーションのシステム タイム ゾーンと同じに設定できます。TIME_ZONE を UTC に設定し、表示時に現在のユーザーのタイム ゾーンに合わせて調整することをお勧めします。
Manual
classmethod datetime.now([tz])
オプションの引数 tz が None であるか指定されていない場合、これは today() と似ていますが、可能であれば、より高い精度を提供します。 time.time() タイムスタンプを介して取得できます (たとえば、これは C の gettimeofday() 関数を提供するプラットフォームで可能です)。
それ以外の場合、tz はクラス tzinfo サブクラスのインスタンスであり、現在の日付でなければなりませんこの場合、結果は tz.fromutc(datetime.utcnow().replace(tzinfo=tz)) と同等になります。today()、utcnow().
classmethod datetime も参照してください。 utcnow()
tzinfo なしで現在の UTC 日付と時刻を返します。これは now() に似ていますが、現在の UTC 日付と時刻を naivedatetime オブジェクトとして返します。now() も参照してください。
タイム ゾーン変換コード
りー

限られた時間でPythonの学習効率を最大化するには、PythonのDateTime、時間、およびスケジュールモジュールを使用できます。 1. DateTimeモジュールは、学習時間を記録および計画するために使用されます。 2。時間モジュールは、勉強と休息の時間を設定するのに役立ちます。 3.スケジュールモジュールは、毎週の学習タスクを自動的に配置します。

PythonはゲームとGUI開発に優れています。 1)ゲーム開発は、2Dゲームの作成に適した図面、オーディオ、その他の機能を提供し、Pygameを使用します。 2)GUI開発は、TKINTERまたはPYQTを選択できます。 TKINTERはシンプルで使いやすく、PYQTは豊富な機能を備えており、専門能力開発に適しています。

Pythonは、データサイエンス、Web開発、自動化タスクに適していますが、Cはシステムプログラミング、ゲーム開発、組み込みシステムに適しています。 Pythonは、そのシンプルさと強力なエコシステムで知られていますが、Cは高性能および基礎となる制御機能で知られています。

2時間以内にPythonの基本的なプログラミングの概念とスキルを学ぶことができます。 1.変数とデータ型、2。マスターコントロールフロー(条件付きステートメントとループ)、3。機能の定義と使用を理解する4。

Pythonは、Web開発、データサイエンス、機械学習、自動化、スクリプトの分野で広く使用されています。 1)Web開発では、DjangoおよびFlask Frameworksが開発プロセスを簡素化します。 2)データサイエンスと機械学習の分野では、Numpy、Pandas、Scikit-Learn、Tensorflowライブラリが強力なサポートを提供します。 3)自動化とスクリプトの観点から、Pythonは自動テストやシステム管理などのタスクに適しています。

2時間以内にPythonの基本を学ぶことができます。 1。変数とデータ型を学習します。2。ステートメントやループの場合などのマスター制御構造、3。関数の定義と使用を理解します。これらは、簡単なPythonプログラムの作成を開始するのに役立ちます。

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

fiddlereveryversings for the-middleの測定値を使用するときに検出されないようにする方法


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

メモ帳++7.3.1
使いやすく無料のコードエディター
