Mô-đun thời gian Python (với các ví dụ)

Trong bài này, chúng ta sẽ tìm hiểu chi tiết về mô-đun thời gian. Chúng ta sẽ học cách sử dụng các hàm liên quan đến thời gian khác nhau được xác định trong mô-đun thời gian với sự trợ giúp của các ví dụ.

Python có một mô-đun được đặt tên timeđể xử lý các tác vụ liên quan đến thời gian. Để sử dụng các chức năng được xác định trong mô-đun, trước tiên chúng ta cần nhập mô-đun. Đây là cách thực hiện:

 import time

Dưới đây là các hàm liên quan đến thời gian thường được sử dụng.

Python time.time ()

Các time()hàm trả về số giây trôi qua kể từ thời đại.

Đối với hệ thống Unix, January 1, 1970, 00:00:00tại UTC là kỷ nguyên (điểm mà thời gian bắt đầu).

 import time seconds = time.time() print("Seconds since epoch =", seconds) 

Python time.ctime ()

Các time.ctime()chức năng mất vài giây trôi qua kể từ thời đại như một tham số và trả về một chuỗi đại diện theo giờ địa phương.

 import time # seconds passed since epoch seconds = 1545925769.9618232 local_time = time.ctime(seconds) print("Local time:", local_time) 

Nếu bạn chạy chương trình, kết quả đầu ra sẽ như sau:

 Giờ địa phương: Thứ Năm ngày 27 tháng 12 15:49:29 2018

Python time.sleep ()

Các sleep()chức năng đình chỉ (chậm trễ) thực hiện các đề hiện tại cho số lượng nhất định của giây.

 import time print("This is printed immediately.") time.sleep(2.4) print("This is printed after 2.4 seconds.") 

Để tìm hiểu thêm, hãy truy cập: Python sleep ().

Trước khi chúng ta nói về các hàm khác liên quan đến thời gian, chúng ta hãy khám phá time.struct_timelớp một cách ngắn gọn.

time.struct_time Lớp

Một số hàm trong timemô-đun chẳng hạn như gmtime(), asctime()v.v. hoặc lấy time.struct_timeđối tượng làm đối số hoặc trả về nó.

Đây là một ví dụ về time.struct_timeđối tượng.

 time.struct_time (tm_year = 2018, tm_mon = 12, tm_mday = 27, tm_hour = 6, tm_min = 35, tm_sec = 17, tm_wday = 3, tm_yday = 361, tm_isdst = 0) 
Mục lục Thuộc tính Giá trị
0 tm_year 0000,…., 2018,…, 9999
1 tm_mon 1, 2,…, 12
2 tm_mday 1, 2,…, 31
3 tm_hour 0, 1,…, 23
4 tm_min 0, 1,…, 59
5 tm_sec 0, 1,…, 61
6 tm_wday 0, 1,…, 6; Thứ Hai là 0
7 tm_yday 1, 2,…, 366
số 8 tm_isdst 0, 1 hoặc -1

Các giá trị (phần tử) của time.struct_timeđối tượng có thể truy cập được bằng cách sử dụng cả chỉ số và thuộc tính.

Python time.localtime ()

Các localtime()chức năng lấy số giây trôi qua kể từ thời đại như một tham số và lợi nhuận struct_timetrong thời gian địa phương .

 import time result = time.localtime(1545925769) print("result:", result) print("year:", result.tm_year) print("tm_hour:", result.tm_hour) 

Khi bạn chạy chương trình, kết quả đầu ra sẽ như sau:

 result: time.struct_time (tm_year = 2018, tm_mon = 12, tm_mday = 27, tm_hour = 15, tm_min = 49, tm_sec = 29, tm_wday = 3, tm_yday = 361, tm_isdst = 0) year: 2018 tm_hour: 15 

Nếu không có đối số hoặc Noneđược chuyển đến localtime(), giá trị được trả về time()sẽ được sử dụng.

Python time.gmtime ()

Các gmtime()chức năng lấy số giây trôi qua kể từ thời đại như một tham số và trả về struct_timetrong UTC .

 import time result = time.gmtime(1545925769) print("result:", result) print("year:", result.tm_year) print("tm_hour:", result.tm_hour) 

Khi bạn chạy chương trình, đầu ra sẽ là:

 result = time.struct_time (tm_year = 2018, tm_mon = 12, tm_mday = 28, tm_hour = 8, tm_min = 44, tm_sec = 4, tm_wday = 4, tm_yday = 362, tm_isdst = 0) year = 2018 tm_hour = 8 

Nếu không có đối số hoặc Noneđược chuyển đến gmtime(), giá trị được trả về time()sẽ được sử dụng.

Python time.mktime ()

Các mktime()chức năng mất struct_time(hoặc một tuple chứa 9 yếu tố tương ứng với struct_time) như là một đối số và trả về giây trôi qua kể từ kỷ nguyên theo giờ địa phương. Về cơ bản, đó là hàm nghịch đảo của localtime().

 import time t = (2018, 12, 28, 8, 44, 4, 4, 362, 0) local_time = time.mktime(t) print("Local time:", local_time) 

Ví dụ dưới đây cho thấy cách thức mktime()localtime()có liên quan.

 import time seconds = 1545925769 # returns struct_time t = time.localtime(seconds) print("t1: ", t) # returns seconds from struct_time s = time.mktime(t) print("s:", seconds) 

When you run the program, the output will be something like:

 t1: time.struct_time(tm_year=2018, tm_mon=12, tm_mday=27, tm_hour=15, tm_min=49, tm_sec=29, tm_wday=3, tm_yday=361, tm_isdst=0) s: 1545925769.0 

Python time.asctime()

The asctime() function takes struct_time (or a tuple containing 9 elements corresponding to struct_time) as an argument and returns a string representing it. Here's an example:

 import time t = (2018, 12, 28, 8, 44, 4, 4, 362, 0) result = time.asctime(t) print("Result:", result) 

When you run the program, the output will be:

 Result: Fri Dec 28 08:44:04 2018

Python time.strftime()

The strftime() function takes struct_time (or tuple corresponding to it) as an argument and returns a string representing it based on the format code used. For example,

 import time named_tuple = time.localtime() # get struct_time time_string = time.strftime("%m/%d/%Y, %H:%M:%S", named_tuple) print(time_string) 

When you run the program, the output will be something like:

 12/28/2018, 09:47:41 

Here, %Y, %m, %d, %H etc. are format codes.

  • %Y - year (0001,… , 2018, 2019,… , 9999)
  • %m - tháng (01, 02,…, 11, 12)
  • %d - ngày (01, 02,…, 30, 31)
  • %H - giờ (00, 01,…, 22, 23
  • %M - phút (00, 01,…, 58, 59)
  • %S - thứ hai (00, 01,…, 58, 61)

Để tìm hiểu thêm, hãy truy cập: time.strftime ().

Python time.strptime ()

Các strptime()chức năng phân tích một chuỗi đại diện cho thời gian và lợi nhuận struct_time.

 import time time_string = "21 June, 2018" result = time.strptime(time_string, "%d %B, %Y") print(result) 

Khi bạn chạy chương trình, đầu ra sẽ là:

 time.struct_time (tm_year = 2018, tm_mon = 6, tm_mday = 21, tm_hour = 0, tm_min = 0, tm_sec = 0, tm_wday = 3, tm_yday = 172, tm_isdst = -1) 

thú vị bài viết...