Python cung cấp thư viện để đọc, biểu diễn và đặt lại thông tin thời gian theo nhiều cách bằng cách sử dụng mô-đun “thời gian”. Ngày, giờ và ngày giờ là một đối tượng trong Python, vì vậy bất cứ khi nào chúng tôi thực hiện bất kỳ thao tác nào trên chúng, chúng tôi thực sự thao tác các đối tượng không phải chuỗi hoặc dấu thời gian.
Trong phần này, chúng ta sẽ thảo luận về mô-đun “thời gian” cho phép chúng ta xử lý các hoạt động khác nhau đúng lúc.
Mô-đun thời gian tuân theo quy ước “EPOCH” đề cập đến điểm bắt đầu thời gian. Trong hệ thống Unix, thời gian “EPOCH” bắt đầu từ ngày 1 tháng 1, 12 giờ sáng, năm 1970 đến năm 2038.
Để xác định giá trị thời gian EPOCH trên hệ thống của bạn, chỉ cần nhập mã bên dưới -
>>> import time >>> time.gmtime(0)
Đầu ra
time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0)
Đánh dấu vào python?
Dấu tích đề cập đến một khoảng thời gian là một số dấu phẩy động được đo bằng đơn vị giây. .
Các hàm phổ biến nhất trong Mô-đun thời gian Python -
1. Hàm time.time ()
Thời gian () là chức năng chính của mô-đun thời gian. Nó đo số giây kể từ kỷ nguyên dưới dạng giá trị dấu phẩy động.
Cú pháp
time.time()
Chương trình thể hiện chức năng trên:
import time print("Number of seconds elapsed since the epoch are : ", time.time())
Đầu ra
Number of seconds elapsed since the epoch are : 1553262407.0398576
Chúng ta có thể sử dụng hàm thời gian python để tính thời gian trên Đồng hồ treo tường đã trôi qua giữa hai thời điểm.
Dưới đây là chương trình tính giờ Đồng hồ treo tường:
import time start = time.time() print("Time elapsed on working...") time.sleep(0.9) end = time.time() print("Time consumed in working: ",end - start)
Đầu ra
Time elapsed on working... Time consumed in working: 0.9219651222229004
2. Hàm time.clock ()
Hàm time.clock () trả về thời gian của bộ xử lý. Nó được sử dụng để kiểm tra hiệu suất / đo điểm chuẩn.
Cú pháp
time.clock()
Hàm clock () trả về thời gian thích hợp mà chương trình thực hiện và nó chính xác hơn hàm clock của nó.
Hãy viết một chương trình sử dụng hai hàm thời gian ở trên (đã thảo luận ở trên) để phân biệt:
import time template = 'time()# {:0.2f}, clock()# {:0.2f}' print(template.format(time.time(), time.clock())) for i in range(5, 0, -1): print('---Sleeping for: ', i, 'sec.') time.sleep(i) print(template.format(time.time(), time.clock()) )
Đầu ra
time()# 1553263728.08, clock()# 0.00 ---Sleeping for: 5 sec. time()# 1553263733.14, clock()# 5.06 ---Sleeping for: 4 sec. time()# 1553263737.25, clock()# 9.17 ---Sleeping for: 3 sec. time()# 1553263740.30, clock()# 12.22 ---Sleeping for: 2 sec. time()# 1553263742.36, clock()# 14.28 ---Sleeping for: 1 sec. time()# 1553263743.42, clock()# 15.34
3. Hàm time.ctime ()
Hàm time.time () lấy thời gian tính bằng “giây kể từ kỷ nguyên” làm đầu vào và chuyển thành giá trị chuỗi có thể đọc được của con người theo thời gian cục bộ. Nếu không có đối số nào được chuyển, nó sẽ trả về thời gian hiện tại.
import time print('The current local time is :', time.ctime()) newtime = time.time() + 60 print('60 secs from now :', time.ctime(newtime))
Đầu ra
The current local time is : Fri Mar 22 19:43:11 2019 60 secs from now : Fri Mar 22 19:44:11 2019
4. Hàm time.sleep ()
Hàm time.sleep () tạm dừng việc thực thi luồng hiện tại trong số giây đã chỉ định. Chuyển một giá trị dấu phẩy động làm đầu vào để có thời gian ngủ chính xác hơn.
Hàm sleep () có thể được sử dụng trong trường hợp chúng ta cần đợi một tệp hoàn tất quá trình đóng hoặc để một cơ sở dữ liệu cam kết xảy ra.
import time # using ctime() to display present time print ("Time starts from : ",end="") print (time.ctime()) # using sleep() to suspend execution print ('Waiting for 5 sec.') time.sleep(5) # using ctime() to show present time print ("Time ends at : ",end="") print (time.ctime())
Đầu ra
Time starts from : Fri Mar 22 20:00:00 2019 Waiting for 5 sec. Time ends at : Fri Mar 22 20:00:05 2019
5. lớp time.struct_time
Time.struct_time là cấu trúc dữ liệu duy nhất có trong mô-đun thời gian. Nó có một giao diện tuple được đặt tên và có thể truy cập thông qua chỉ mục hoặc tên thuộc tính.
Cú pháp
time.struct_time
Lớp này hữu ích khi bạn cần truy cập vào trường cụ thể của một ngày.
Lớp này cung cấp một số hàm như localtime (), gmtime () và trả về các đối tượng struct_time.
import time print(' Current local time:', time.ctime()) t = time.localtime() print('Day of month:', t.tm_mday) print('Day of week :', t.tm_wday) print('Day of year :', t.tm_yday)
Đầu ra
Current local time: Fri Mar 22 20:10:25 2019 Day of month: 22 Day of week : 4 Day of year : 81
6. Hàm time.strftime ()
Hàm này nhận một tuple hoặc struct_time trong đối số thứ hai và chuyển đổi thành một chuỗi theo định dạng được chỉ định trong đối số đầu tiên.
Cú pháp
time.strftime()
Dưới đây là chương trình để triển khai hàm time.strftime () -
import time now = time.localtime(time.time()) print("Current date time is: ",time.asctime(now)) print(time.strftime("%y/%m/%d %H:%M", now)) print(time.strftime("%a %b %d", now)) print(time.strftime("%c", now)) print(time.strftime("%I %p", now)) print(time.strftime("%Y-%m-%d %H:%M:%S %Z", now))
Đầu ra
Current date time is: Fri Mar 22 20:13:43 2019 19/03/22 20:13 Fri Mar 22 Fri Mar 22 20:13:43 2019 08 PM 2019-03-22 20:13:43 India Standard Time
Kiểm tra múi giờ trong python
Có hai thuộc tính thời gian cung cấp cho bạn thông tin múi giờ -
1. time.timezone
Nó trả về phần bù của múi giờ cục bộ (không phải DST) ở định dạng UTC.
>>> time.timezone -19800
2. time.tzname - Nó trả về một bộ chứa các múi giờ không phải DST và DST cục bộ.
>>> time.tzname ('India Standard Time', 'India Daylight Time')