2012-05-19 28 views
6

Tôi đang cố gắng để chuyển đổi một thời gian để hẹn hò:Python chuyển đổi dài cho đến nay

class timeStamp(object): 
    def getDateTime(self,longDate):                                 
     myNumber = float(longDate) 
     return str(datetime.datetime.fromtimestamp(time.ctime(myNumber)).strftime('%Y-%m-%d %H:%M:%S')) 

Nhưng tôi có một lỗi lạ:

File "./index.py", line 104, in getDateTime 
    return str(datetime.datetime.fromtimestamp(time.ctime(myNumber)).strftime('%Y-%m-%d %H:%M:%S')) 
TypeError: a float is required 

Tại sao nó phàn nàn khi tôi cast nó một cách rõ ràng nổi? Dài là một dấu thời gian Unix được lưu trữ như là một mysql dài.

Trả lời

8

Những gì bạn cần chỉ đơn giản là datetime.datetime.fromtimestamp(myNumber).strftime('%Y-%m-%d %H:%M:%S') như time.ctime() trả về một chuỗi:

>>> time.ctime() 
'Sat May 19 13:46:09 2012' 
9

time.ctime() cung cấp cho bạn biểu diễn chuỗi thời gian.

nó nên làm việc với:

datetime.datetime.fromtimestamp(myNumber).strftime('%Y-%m-%d %H:%M:%S') 
Các vấn đề liên quan