- 軟件自動化測試實戰解析:基于Python3編程語言
- 徐西寧編著
- 516字
- 2021-07-23 16:17:35
2.10 日期和時間
日期和時間并不是Python的基礎數據類型,但是一個非常常用且重要的類型。
時間,既簡單又復雜。說它簡單,是因為每個人在日常生活中每天都會接觸到;說它復雜,是因為人類至今未能對它有精確的定義。
對于程序員而言,說它簡單,是因為已經有很多成熟的模塊幫助我們來處理與時間相關的任務;說它復雜,是因為時間牽涉到時區、語言、計算、精度等方面,非常煩瑣。
Python有datetime模塊,這個模塊有幾個細分的類型:
·如果應用場景只關心日期(年、月、日),用Date類型。
·如果應用場景只關心時間(小時、分、秒、毫秒),用Time類型。
·如果應用場景對日期和時間都關心,用Datetime類型。
我們從最簡單的任務開始:獲取當前時間。
>>> from datetime import datetime >>> current_time = datetime.now() >>> print(current_time) 2019-03-17 09:21:06.553652
從print語句的輸出可以容易地看出獲取到的“當前時間”的信息,這些信息包括:年、月、日、小時、分、秒、微秒(microsecond)。
我們來看一下獲取到的當前時間。
>>> from datetime import datetime >>> current_time = datetime.now() >>> current_time datetime.datetime(2019, 3, 17, 9, 21, 6, 553652)
還可以更直觀地看到時間信息的各個構成部分。
>>> current_time.year 2019 >>> current_time.month 3 >>> current_time.day 17 >>> current_time.hour 9 >>> current_time.minute 21 >>> current_time.second 6
如果用type方法來查看其中的類型,我們可以看到year其實就是簡單的int類型。
>>> type(current_time) <class 'datetime.datetime'> >>> type(current_time.year) <class 'int'>
如果我們關心的只是日期部分,可以只用日期的部分。
>>> today = datetime.now().date() >>> today datetime.date(2019, 3, 17) >>> today.year 2019 >>> today.hour Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'datetime.date' object has no attribute 'hour'