7

long を date に変換しようとしています:

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'))

しかし、私は奇妙なエラーがあります:

 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

明示的にフロートにキャストすると、なぜ不平を言うのですか? long は、mysql に long として格納される Unix タイムスタンプです。

4

2 に答える 2

12

time.ctime()時間の文字列表現を提供します。

それはで動作するはずです:

datetime.datetime.fromtimestamp(myNumber).strftime('%Y-%m-%d %H:%M:%S')
于 2012-05-19T10:50:35.257 に答える
11

必要なのは 、文字列datetime.datetime.fromtimestamp(myNumber).strftime('%Y-%m-%d %H:%M:%S')time.ctime()返すだけです。

>>> time.ctime()
'Sat May 19 13:46:09 2012'
于 2012-05-19T10:50:47.957 に答える