2014-10-09 22 views
6

Nguyên tôi đã thực hiện đoạn mã này để chuyển đổi ngày vào con người thời gian có thể đọc được:Python - Chuyển đổi giây từ thời gian kỷ nguyên thành thời gian có thể đọc được con người

a = datetime.datetime.strptime(time, "%Y-%m-%d %H:%M:%S.%f") 
    b = datetime.datetime.now() 
    c = b - a 
    days, hours, minutes, seconds = int(c.days), int(c.seconds // 3600), int(c.seconds % 3600/60.0), int(c.seconds % 60.0) 
    return days, hours, minutes, seconds 
    EXAMPLE OUTPUT: 1 days, 4 hours, 24 minutes, 37 seconds 

và tôi đang cố gắng để làm cho nó sử dụng thời gian kỷ nguyên, nhưng tôi không có ý tưởng về để làm cho nó tính toán ngày giờ và vv

a = last_epoch #last epoch recorded 
    b = time.time() #current epoch time 
    c = b - a #returns seconds 
    hours = c // 3600/24 #the only thing I managed to figure out 
+1

Câu trả lời này sẽ giúp bạn ra: [làm thế nào tôi có thể tạo ra một sự khác biệt có thể đọc được con người khi subt racting hai UNIX timestamps sử dụng Python?] (http://stackoverflow.com/questions/6574329/how-can-i-produce-a-human-readable-difference-when-subtracting-two-unix-timestam) – siame

+0

@JohnZwinck không có câu hỏi không trả lời, tôi sẽ nhận được năm 1970 nếu tôi chuyển đổi giây từ last_epoch - time.time() –

Trả lời

8
a = last_epoch #last epoch recorded 
b = time.time() #current epoch time 
c = b - a #returns seconds 
days = c // 86400 
hours = c // 3600 % 24 
minutes = c // 60 % 60 
seconds = c % 60 
+0

Cảm ơn bạn! Cách thuận tiện nhất mà không cần sử dụng các mô-đun python bổ sung –

24
import datetime 
timestamp = 1339521878.04 
value = datetime.datetime.fromtimestamp(timestamp) 
print(value.strftime('%Y-%m-%d %H:%M:%S')) 
Các vấn đề liên quan