Làm cách nào để tính chênh lệch thời gian giữa giờ và phút trong python?

Python cung cấp một mô-đun datetime để thao tác ngày và giờ. Nó bao gồm các lớp sau,

  • ngày giờ. ngày. Một đối tượng của lớp ngày chỉ định một ngày sử dụng năm, tháng và ngày
  • ngày giờ. thời gian. Một đối tượng của lớp thời gian chỉ định dấu thời gian sử dụng giờ, phút, giây, micro giây và tzinfo
  • ngày giờ. ngày giờ. Một đối tượng của datetime là sự kết hợp của ngày và giờ
  • ngày giờ. múi giờ. Khoảng thời gian, đại diện cho sự khác biệt giữa hai ngày hoặc thời gian hoặc ngày giờ
  • ngày giờ. tzinfo. Nó chứa thông tin múi giờ

Bây giờ để có sự khác biệt giữa hai dấu thời gian trong python, chúng tôi sẽ sử dụng mô-đun datetime

Đầu tiên chúng ta sẽ tạo các đối tượng ngày giờ bắt đầu và kết thúc từ các dấu thời gian của chuỗi. Sau đó, chúng tôi sẽ trừ các đối tượng datetime để lấy thời lượng trong datetime. đối tượng múi giờ. Sau đó, sử dụng các thuộc tính của đối tượng timedelta, chúng tôi sẽ tìm nạp số giờ ở giữa hai dấu thời gian. Hãy hiểu với một số ví dụ,

Python Ví dụ 1. Nhận sự khác biệt giữa hai dấu thời gian tính bằng giờ

Chuyển đổi dấu thời gian ở định dạng chuỗi thành đối tượng datetime. Sau đó trừ chúng và lấy đối tượng timedelta. Sử dụng hàm total_seconds[] của timedelta để lấy toàn bộ thời lượng giữa hai dấu thời gian tính bằng giây, sau đó chuyển đổi thành giờ bằng cách chia cho 3600. Ví dụ,

quảng cáo

from datetime import datetime

date_1 = '24/7/2021 11:13:08.230010'
date_2 = '24/7/2021 11:14:18.333338'

date_format_str = '%d/%m/%Y %H:%M:%S.%f'

start = datetime.strptime[date_1, date_format_str]
end =   datetime.strptime[date_2, date_format_str]

# Get interval between two timstamps as timedelta object
diff = end - start

# Get interval between two timstamps in hours
diff_in_hours = diff.total_seconds[] / 3600

print['Difference between two datetimes in hours:']
print[diff_in_hours]

đầu ra

Difference between two datetimes in hours:
0.019473146666666667

Làm thế nào nó hoạt động?

Chúng tôi đã tạo hai đối tượng ngày giờ từ hai dấu thời gian ở định dạng chuỗi, bằng cách chuyển ngày và định dạng của nó vào hàm strptime[]. Sau đó, chúng tôi đã trừ hai đối tượng ngày giờ này và nhận được ngày giờ. đối tượng timedelta, đại diện cho khoảng thời gian giữa hai ngày. Lớp timedelta có hàm thành viên total_seconds[], biểu thị toàn bộ thời lượng tính bằng giây [bao gồm cả phần phân số cho đến mili giây]. Chúng tôi đã sử dụng điều đó để lấy sự khác biệt giữa hai dấu thời gian tính bằng giây và sau đó chúng tôi chuyển đổi nó thành giờ bằng cách chia nó cho 3600

Python Ví dụ 2. Nhận sự khác biệt giữa hai datetimes tính bằng giờ

Hãy xem một ví dụ khác, trong đó cả hai dấu thời gian cách nhau hơn 1 ngày,

from datetime import datetime

date_1 = '24/7/2021 11:13:08.230010'
date_2 = '25/7/2021 11:14:18.333338'

date_format_str = '%d/%m/%Y %H:%M:%S.%f'

start = datetime.strptime[date_1, date_format_str]
end =   datetime.strptime[date_2, date_format_str]

# Get interval between two timstamps as timedelta object
diff = end - start

# Get interval between two timstamps in hours
diff_in_hours = diff.total_seconds[] / 3600

print['Difference between two datetimes in hours:']
print[diff_in_hours]

đầu ra

Difference between two datetimes in hours:
24.019473146666666

Python Ví dụ 3. Nhận sự khác biệt giữa hai dấu thời gian tính bằng giờ

Hãy xem một ví dụ khác, trong đó cả hai dấu thời gian cách nhau hơn 2 năm,

from datetime import datetime

date_1 = '2/7/2021 21:55:12.230010'
date_2 = '24/9/2023 11:13:08.333338'

date_format_str = '%d/%m/%Y %H:%M:%S.%f'

start = datetime.strptime[date_1, date_format_str]
end =   datetime.strptime[date_2, date_format_str]

# Get interval between two timstamps as timedelta object
diff = end - start

# Get interval between two timstamps in hours
diff_in_hours = diff.total_seconds[] / 3600

print['Difference between two datetimes in hours:']
print[diff_in_hours]

đầu ra

Difference between two datetimes in hours:
19525.298917591113

Ví dụ Python 4. Nhận sự khác biệt giữa hai datetimes tính bằng giờ

Nếu chúng ta có các đối tượng ngày giờ hoàn chỉnh thay vì chỉ các chuỗi dấu thời gian, trong trường hợp đó, hãy xem cách tính toán sự khác biệt giữa hai ngày giờ tính bằng giờ,

from datetime import datetime

date_1 = datetime[2021, 7, 2, 21, 55, 12]
date_2 = datetime[2021, 7, 24, 11, 13, 8]

# Get interval between two timstamps as timedelta object
diff = date_2 - date_1

# Get interval between two timstamps in hours
diff_in_hours = diff.total_seconds[] / 3600

print['Difference between two datetimes in hours:']
print[diff_in_hours]

đầu ra

Difference between two datetimes in hours:
517.2988888888889

Ví dụ Python 5. Nhận sự khác biệt giữa hai thời gian biểu tính bằng giờ bằng cách sử dụng gấu trúc

Giả sử chúng ta có hai dấu thời gian ở định dạng chuỗi. Chúng ta có thể chuyển đổi chúng thành đối tượng datetime bằng pandas. hàm to_datetime[]. Sau đó, chúng tôi sẽ trừ các đối tượng datetime để lấy thời lượng trong datetime. đối tượng múi giờ. Sau đó, bằng cách sử dụng các thuộc tính của đối tượng timedelta, chúng tôi sẽ tìm nạp tổng số giây ở giữa hai dấu thời gian [bao gồm cả phần phân số cho đến mili giây] rồi chia số đó cho 3600 để có thời lượng hoàn chỉnh tính bằng giờ. Ví dụ,

________số 8

đầu ra

Difference between two datetimes in hours:
19525.298917591113

Bản tóm tắt

Chúng tôi đã học được rằng, trong python, làm thế nào để có được sự khác biệt giữa hai thời gian tính bằng giờ

Hướng dẫn về Pandas -Tìm hiểu Phân tích dữ liệu với Python

 
  • Hướng dẫn Pandas Phần #1 - Giới thiệu về Phân tích dữ liệu với Python
  • Hướng dẫn Pandas Phần #2 - Khái niệm cơ bản về Pandas Series
  • Hướng dẫn Pandas Phần #3 - Nhận & Đặt giá trị Chuỗi
  • Pandas Tutorial Part #4 - Thuộc tính & phương thức của Pandas Series
  • Hướng dẫn về Pandas Phần #5 - Thêm hoặc xóa các thành phần của Pandas Series
  • Hướng dẫn về Pandas Phần #6 - Giới thiệu về DataFrame
  • Hướng dẫn về Pandas Phần #7 - DataFrame. loc[] - Chọn Hàng/Cột theo Lập chỉ mục
  • Hướng dẫn về Pandas Phần #8 - DataFrame. iloc[] - Chọn Hàng/Cột theo Tên nhãn
  • Hướng dẫn về gấu trúc Phần #9 - Lọc các hàng trong khung dữ liệu
  • Hướng dẫn Pandas Phần #10 - Thêm/Xóa Hàng & Cột DataFrame
  • Hướng dẫn về Pandas Phần #11 - Các thuộc tính & phương thức DataFrame
  • Hướng dẫn Pandas Phần #12 - Xử lý dữ liệu bị thiếu hoặc giá trị NaN
  • Hướng dẫn về Pandas Phần #13 - Lặp lại các Hàng & Cột của DataFrame
  • Hướng dẫn Pandas Phần #14 - Sắp xếp DataFrame theo Hàng hoặc Cột
  • Hướng dẫn về gấu trúc Phần #15 - Hợp nhất hoặc ghép các khung dữ liệu
  • Hướng dẫn về Pandas Phần #16 - DataFrame GroupBy được giải thích bằng các ví dụ
 

Bạn đang muốn tạo dựng sự nghiệp trong Khoa học dữ liệu với Python?

Khoa học dữ liệu là tương lai và tương lai là ở đây ngay bây giờ. Các nhà khoa học dữ liệu hiện là những chuyên gia được tìm kiếm nhiều nhất hiện nay. Để trở thành một Nhà khoa học dữ liệu giỏi hoặc để chuyển đổi nghề nghiệp trong Khoa học dữ liệu, người ta phải sở hữu bộ kỹ năng phù hợp. Chúng tôi đã tuyển chọn danh sách Chứng chỉ chuyên nghiệp tốt nhất về Khoa học dữ liệu với Python. Các khóa học này sẽ dạy cho bạn các công cụ lập trình cho Khoa học dữ liệu như Pandas, NumPy, Matplotlib, Seaborn và cách sử dụng các thư viện này để triển khai các mô hình Máy học

Kiểm tra Đánh giá chi tiết về Chứng chỉ chuyên nghiệp tốt nhất về Khoa học dữ liệu với Python

Hãy nhớ rằng, Khoa học dữ liệu đòi hỏi rất nhiều kiên nhẫn, bền bỉ và thực hành. Vì vậy, hãy bắt đầu học ngay hôm nay

Làm cách nào để tính chênh lệch thời gian giữa hai dấu thời gian trong Python?

phương thức timedelta[]. Để tìm sự khác biệt giữa hai ngày tháng trong Python, người ta có thể sử dụng lớp timedelta có trong thư viện datetime . Lớp timedelta lưu trữ sự khác biệt giữa hai đối tượng datetime.

Làm cách nào để tính chênh lệch thời gian giữa hai ngày trong Python?

Sử dụng hàm strptime[date_str, format] để chuyển đổi chuỗi ngày thành đối tượng ngày giờ theo định dạng tương ứng. Để biết sự khác biệt giữa hai ngày, hãy trừ ngày 2 cho ngày 1 . Kết quả là một đối tượng timedelta.

Làm thế nào để tính toán sự khác biệt thời gian?

Tính toán chênh lệch múi giờ theo cách thủ công .
Sử dụng định dạng 24 giờ để tính toán dễ dàng hơn. .
Trừ tất cả thời gian kết thúc từ giờ sang phút. .
Tiến hành trừ phút đầu giờ đến phút cuối
Trừ đi số giờ từ đầu đến cuối
Kết hợp các kết quả giờ và phút với nhau để đi đến câu trả lời

Chủ Đề