Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan perpustakaan datetime Python

Cara menggunakan perpustakaan datetime Python

WBOY
WBOYke hadapan
2023-05-27 12:11:161677semak imbas

1. Gambaran keseluruhan perpustakaan datetime

Memaparkan tarikh dan masa dalam format yang berbeza ialah fungsi yang paling biasa digunakan dalam program. Python menyediakan perpustakaan fungsi standard untuk pemprosesan masa masa tarikh, yang menyediakan satu siri kaedah pemprosesan masa daripada mudah kepada kompleks.

datetime Pustaka boleh mendapatkan masa daripada sistem dan mengeluarkannya dalam format yang dipilih pengguna. Pustaka

datetime adalah berdasarkan Greenwich Mean Time, dengan setiap hari ditakrifkan dengan tepat oleh 3600X24 saat. Pustaka termasuk dua pemalar: datetime.MINYEAR dan datetime.MAXYEAR, yang masing-masing mewakili tahun minimum dan maksimum yang boleh diwakili oleh datetime Nilai ​masing-masing adalah 1 dan 9999.

datetime Perpustakaan menyediakan pelbagai ungkapan tarikh dan masa dalam bentuk kelas.

(1) datetime.date: Kelas perwakilan tarikh, yang boleh mewakili tahun, bulan, hari, dsb.
(2) datetime.time: Kelas perwakilan masa, yang boleh mewakili jam, minit, saat, milisaat, dsb.
(3) datetime.datetime: Kelas yang mewakili tarikh dan masa, dengan fungsi meliputi kelas tarikh dan masa.
(4) datetime.timedelta: Kelas yang berkaitan dengan selang masa.
(5) datetime.tzinfo: Kelas perwakilan maklumat yang berkaitan dengan zon waktu.

Memandangkan kelas datetime.daetime mempunyai bentuk ungkapan yang paling banyak, di sini kami memperkenalkan penggunaan kelas ini terutamanya. Untuk menggunakan kelas datetime, anda perlu menggunakan import perkataan reserved Cara untuk merujuk kelas datetime adalah seperti berikut:

from datetime import datetime
2. Sambungan: 1 Januari 1970 Hari

Sistem komputer kontemporari semuanya mempunyai fungsi pemasaan yang mampu mengeluarkan masa dari Masa Min Greenwich

1970 tahun1 bulan1 hari00:00:00 Kira masa dari awal hingga sekarang, tepat hingga saat Ini adalah tabiat reka bentuk awal sistem pengendalian UNIX. dan kemudiannya digunakan dalam semua sistem komputer.

Perkakasan dan sistem komputer semasa semuanya

64 bit Jika 64 bit digunakan untuk menyimpan kiraan masa ini, jarak maksimum boleh diwakili oleh 1970. tahun 1 bulan 1 hari bermula dengan 264 saat, jumlah saat 1 tahun365 hari adalah lebih kurang1.9x224, oleh itu, sistem komputer 64-bit boleh mewakili masa kepada kira-kira 239 AD, percayalah keturunan kami N malah Tidak perlu risau tentang masa yang tidak tepat sehingga hari bumi musnah.

——Mengapa memilih untuk bermula dari

1970 tahun 1 bulan 1 hari ——Tidak kira hari yang anda pilih untuk bermula, Mereka semua mempunyai masalah yang sama, bukan?

3 Pustaka datetime menghuraikan kelas

datetime (datetime.datetime. kelas, selepas ini dirujuk sebagai datetime) adalah dengan mencipta objek datetime dahulu, dan kemudian memaparkan masa melalui kaedah dan sifat objek. Terdapat tiga kaedah untuk mencipta objek datetime: datetime.now(), datetime.utcnow() dan datetime.datetime() . 1. Gunakan

datetime.now()

untuk mendapatkan objek tarikh dan masa semasa Kaedah penggunaan adalah seperti berikut:

datetime.now()
Fungsi: Kembalikan

. datetime

type , mewakili tarikh dan masa semasa, tepat kepada mikrosaat. Parameter: Tiada Panggil fungsi ini, hasil pelaksanaan adalah seperti berikut:

from datetime import datetime
today = datetime.now()
print(today)

2022-05-01 20:32:41.772021

Gunakan
masa tarikh utcnow()

Dapatkan objek masa UTC (Universal Standard Time) yang sepadan dengan tarikh dan masa semasa Kaedah penggunaan adalah seperti berikut:

datetime.utcnow ()
Fungsi: Kembalikan tarikh masa

jenis, mewakili

UTC perwakilan tarikh dan masa semasa, tepat kepada mikrosaat. Parameter: Tiada Panggil fungsi ini, hasil pelaksanaan adalah seperti berikut:

from datetime import datetime
today = datetime.utcnow()
print(today)
2022-05-01 12:35:40.849860

3.

tarikh. now()
dan

datetime utcnow() kedua-duanya mengembalikan objek jenis datetime Anda juga boleh terus menggunakan datetime() untuk membina tarikh dan objek masa. Gunakan kaedah Seperti berikut:

datetime (year, month, day, hour=0, minute=0,second=0, microsecond=0)
Fungsi: Mengembalikan jenis datetime

, mewakili tarikh dan masa yang ditentukan, yang boleh tepat kepada mikrosaat. Parameter

adalah seperti berikut:

tahun

: tahun yang dinyatakan,

MINYEAR <= tahun <= MAXYEARbulan

: Bulan yang dinyatakan,

1 <= bulan <= 12hari

: Tarikh yang dinyatakan,

1 <= hari <=Had atas tarikh yang sepadan dengan bulanjam

: Jam yang ditentukan,

0 <= jam < 24minit

:Bilangan minit yang dinyatakan,

0 <= minit < 60

second:指定的秒数,0 <= second < 60

microsecond:指定的微秒数,0 <= microsecond < 1000000

其中,hourminutesecondmicrosecond 参数可以全部或部分省略。

调用 datetime() 函数直接创建一个 datetime 对象,表示 20225120:33327 微妙,执行结果如下:

from datetime import datetime
someday = datetime(2022, 5, 1, 20, 43, 32, 7)
print(someday)

2022-05-01 20:43:32.000007

到此,程序已经有了一个 datetime 对象,进一步可以利用这个对象的属性显示时间,为了区别 datetime 库名,采用上例中的 someday 代替生成的 datetime 对象,常用属性如下表所示。

属性 描述
someday.min 固定返回 datetime 的最小时间对象,datetime(1,1,1,0,0)
someday.max 固定返回 datetime 的最大时间对象,datetime(9999,12,31,23,59,59,59,999999)
someday.year 返回 someday 包含的年份
someday.month 返回 someday 包含的月份
someday.day 返回 someday 包含的日期
someday.hour 返回 someday 包含的小时
someday.minute 返回 someday 包含的分钟
someday.second 返回 someday 包含的秒钟
someday.microsecond 返回 someday 包含的微妙值

datetime 对象有 3 个常用的时间格式化方法,如下表所示

属性 描述
someday.isoformat() 采用 ISO 8601 标准显示时间
someday.isoweekday() 根据日期计算星期后返回 1~7,对应星期一到星期日
someday.strftime(format) 根据格式化字符串 format 进行格式显示的方法

isoformat()isoweekday() 方法的使用如下:

from datetime import datetime
today = datetime.now()
print(today.isoformat())
print(today.isoweekday())

程序执行结果如下:

2022-05-01T21:00:28.392304
7

strftime() 方法是时间格式化最有效的方法,几乎可以以任何通用格式输出时间。例如下面的例子,用该方法输出特定格式时间。

from datetime import datetime
today = datetime.now()
print(today.strftime("%Y-%m-%d %H : %M : %S"))

程序执行结果如下:

2022-05-01 21 : 04 : 23

下表是 strftime() 方法的格式化控制符。

格式化字符串 日期/时间 值范围和实例
%Y 年份 0001~9999
%m 月份 01~12
%B 月名 January~December
%b 月名缩写 Jan~Dec
%d 日期 01~31
%A 星期 Monday~Sunday
%a 星期缩写 Mon~Sun
%H 小时(24 h 制) 00~23
%M 分钟 00~59
%S 00~59
%x 日期 月/日/年,例如,01/01/2022
%X 时间 时 :分:秒,例如,19 : 09 : 31

strftime() 格式化字符串的数字左侧会自动补零,上述格式也可以与 print() 的格式化函数起使用,例如:

from datetime import datetime

now = datetime.now()

print(now.strftime("%Y- %m- %d"))

print(now.strftime("%A,%d. %B %Y %H: %M%p"))

print("今天是 {0:%Y} 年 {0:%m} 月 {0:%d} 日".format(now))

程序执行结果如下:

2022- 05- 01
Sunday,01. May 2022 21: 21PM
今天是 2022 年 05 月 01 日

datetime 库主要用于对时间的表示,从格式化角度掌握 strftime() 函数已经能够处理很多情况了。建议读者在遇到需要处理时间的问题时采用 datetime 库,简化格式输出和时间的维护。

Atas ialah kandungan terperinci Cara menggunakan perpustakaan datetime Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam