Hướng dẫn how do i convert timedelta to time in python? - Làm cách nào để chuyển đổi thời gian giao dịch thành thời gian trong python?

Khi tìm nạp các hàng từ cơ sở dữ liệu của tôi chứa thời gian EX 15:15:15 h/m/s. Tôi nhận được những thứ đó trong các đối tượng TimeDelta, tôi muốn chúng trong đối tượng thời gian để sau này tôi có thể kết hợp chúng với một đối tượng ngày và nhận một đối tượng DateTime.

for row in results:
    startDate = row['startDate']
    StartTime = row['startTime']
    myListStartDate.append(datestart)
    myListTimeStart.append(startTime)

Khi tôi đặt tất cả các thời gian bắt đầu vào một danh sách và in danh sách, tôi nhận được datetime.timedelta (0, 54900). Vì vậy, làm thế nào để chuyển đổi thời gian thành một đối tượng thời gian để sau này tôi có thể so sánh nó với các đối tượng thời gian khác.

Hỏi ngày 5 tháng 10 năm 2015 lúc 23:46Oct 5, 2015 at 23:46

Hướng dẫn how do i convert timedelta to time in python? - Làm cách nào để chuyển đổi thời gian giao dịch thành thời gian trong python?

1

Đây là cách tôi sẽ làm điều đó.

>>> import datetime
>>> startTime = datetime.timedelta(0, 54915)
>>> startTime = (datetime.datetime.min + startTime).time()
>>> startTime
datetime.time(15, 15, 15)

Tín dụng đi đến bài viết này.

Lakshayg

2.0032 huy hiệu vàng21 Huy hiệu bạc33 Huy hiệu đồng2 gold badges21 silver badges33 bronze badges

Đã trả lời ngày 6 tháng 10 năm 2015 lúc 1:00Oct 6, 2015 at 1:00

Hướng dẫn how do i convert timedelta to time in python? - Làm cách nào để chuyển đổi thời gian giao dịch thành thời gian trong python?

Amathamathamath

1.2098 huy hiệu bạc14 huy hiệu đồng8 silver badges14 bronze badges

0

Hướng dẫn how do i convert timedelta to time in python? - Làm cách nào để chuyển đổi thời gian giao dịch thành thời gian trong python?

Bài viết này sẽ thảo luận về cách chúng ta có thể chuyển đổi đối tượng DateTime Module TimeDelta thành tổng số phút.

Một chút nền tảng của vấn đề trong tay,

DateTime.Timedelta trong mô -đun DateTime thể hiện sự khác biệt giữa hai ngày, thời gian hoặc đối tượng DateTime. Ví dụ: chúng tôi có hai dấu thời gian là đối tượng DateTime,datetime.timedelta in the datetime module represents the difference between two dates, time, or datetime objects. For example, we have two timestamps as datetime objects,

from datetime import datetime

start_timestamp =   datetime(2021, 10, 1, 7, 20, 17, 100000)
end_timestamp   =   datetime(2021, 10, 1, 8, 25, 12, 200002)

Nếu bạn muốn sự khác biệt giữa hai dấu thời gian này, bạn có thể trừ các đối tượng DateTime này. Nó sẽ cho một thời gian, tức là.

# Get different between two datetime as timedelta object.
timedelta_obj = (end_timestamp - start_timestamp)

print(timedelta_obj)
print( type(timedelta_obj) )

Output:

1:04:55.100002

Đối tượng TimedelTA này chứa chênh lệch thời gian giữa hai dữ liệu. Nhưng khi chúng tôi in nó, sự khác biệt tuyệt đối sẽ được in ở định dạng HH: MM :: SS.FFFFFF. hh:mm::ss.ffffff format.

Quảng cáo

Điều gì sẽ xảy ra nếu chúng ta muốn sự khác biệt tuyệt đối trong tổng số phút chỉ? Cho rằng chúng ta chỉ có thể chuyển đổi đối tượng Timedelta này thành phút. Hãy để xem cách làm điều đó,

Đối tượng Timedelta đại diện cho một thời lượng. Nó có hàm TOTAL_SECONDS (), cho tổng số giây trong toàn bộ thời lượng của đối tượng TimeDelta. Chúng ta có thể nhận được toàn bộ giây từ nó và sau đó chia nó cho 60 để nhận toàn bộ thời gian chỉ trong vài phút. Ví dụ,total_seconds(), which gives the total seconds in the complete duration of timedelta object. We can get the whole seconds from it and then divide it by 60 to get the entire duration in minutes only. For example,

# Convert timedelta object to minutes
diff_in_minutes = timedelta_obj.total_seconds() / 60

print("Total Time Difference : {} Minutes".format(diff_in_minutes) )

Output:

Total Time Difference : 64.91833336666667 Minutes

Chúng tôi có sự khác biệt giữa hai dấu thời gian chỉ trong vài phút bằng cách chuyển đổi TimedelTa thành phút.

Nó chứa phần thập phân quá. Nếu bạn muốn giá trị tuyệt đối xấp xỉ, thì bạn có thể làm tròn giá trị biên bản, tức là.

# Convert timedelta object to minutes
diff_in_minutes = timedelta_obj.total_seconds() / 60
# Round of the minutes value
diff_in_minutes = round(diff_in_minutes)

print("Total Time Difference : {} Minutes".format(diff_in_minutes) )

Đầu ra

Total Time Difference : 65 Minutes

Ví dụ làm việc hoàn chỉnh như sau,

from datetime import datetime

start_timestamp =   datetime(2021, 10, 1, 7, 20, 17, 100000)
end_timestamp   =   datetime(2021, 10, 1, 8, 25, 12, 200002)

# Get different between two datetime as timedelta object.
timedelta_obj = (end_timestamp - start_timestamp)

print(timedelta_obj)
print( type(timedelta_obj) )

# Convert timedelta object to minutes
diff_in_minutes = timedelta_obj.total_seconds() / 60

print("Total Time Difference : {} Minutes".format(diff_in_minutes) )

# Round of the minutes value
diff_in_minutes = round(diff_in_minutes)

print("Total Time Difference : {} Minutes".format(diff_in_minutes) )

Output:

>>> import datetime
>>> startTime = datetime.timedelta(0, 54915)
>>> startTime = (datetime.datetime.min + startTime).time()
>>> startTime
datetime.time(15, 15, 15)
0

Summary:

Hôm nay chúng tôi đã học được rằng cách chúng tôi có thể chuyển đổi DateTime.TimedelTa thành phút trong Python.

Làm cách nào để chuyển đổi TimeDelta theo thời gian?

Làm cách nào để chuyển đổi Timedelta theo thời gian ?..
In (Days_and_time) Đầu ra ..
giây = days_and_time.giây ..
giờ = giây // 3600.Tính giờ từ giây ..
phút = (giây // 60)%60 ..
In ("Ngày:", ngày, "Giờ:", giờ, "phút:", phút).

Làm thế nào để bạn chuyển đổi thời gian ngày thành giờ?

Bạn có thể sử dụng các phương thức sau để chuyển đổi cột TimeDelta thành cột Số nguyên trong Pandas DataFrame: Phương thức 1: Chuyển đổi TimedelTa thành Integer (ngày) DF ['Days'] = DF ['TimedelTa_Column'].Phương pháp 2: Chuyển đổi TimEdelTa thành Số nguyên (Giờ) DF ['Giờ'] = DF ['TimedelTa_Column'] / PD.df['hours'] = df['timedelta_column'] / pd.

Làm cách nào để chuyển đổi Timedelta thành giây trong Python?

Để có được tổng số giây trong thời lượng từ đối tượng TimeDelta, hãy sử dụng phương thức Timedelta.total_seconds ().use the timedelta. total_seconds() method.

Làm thế nào để bạn chuyển đổi chuỗi thành thời gian trong Python?

Chúng ta có thể chuyển đổi một chuỗi thành DateTime bằng hàm strptime ().Hàm này có sẵn trong các mô -đun DateTime và Time để phân tích một chuỗi vào các đối tượng DateTime và thời gian tương ứng.using strptime() function. This function is available in datetime and time modules to parse a string to datetime and time objects respectively.