python-3.5,时间戳到YYYYmmDDHHMMSS

时间:2016-01-16 11:07:19

标签: timestamp python-3.5

每个星期六的工人都好! 我需要将时间戳转换为YYYYmmDDHHMMSS。以下效果很好

    timestamp=now_var[27:38]                      # timestamp string 
dth_now=(                               # string date heure 
    datetime.datetime.fromtimestamp(
        int(timestamp)
     ).strftime('%Y%m%d_%H%M%S')
)                                       # a string

但发出警告

  File "C:\_Python\kWh_compare.py", line 35, in <module>
).strftime('%Y%m%d_%H%M%S')
ValueError: invalid literal for int() with base 10: ''

问题出在哪里? 感谢

2 个答案:

答案 0 :(得分:0)

不知道API,但可能是&#34; fromtimestamp&#34;需要一个字符串而不是一个int?

否则尝试将其拆分为多个操作

timestamp=now_var[27:38] 
inttimestamp=int(timestamp)
datetimestamp=datetime.datetime.fromtimestamp(inttimestamp)
dth_now=datetimestamp.strftime('%Y%m%d_%H%M%S')

答案 1 :(得分:0)

问题是now_var[27:38] == '' 您可以从ValueError报告的字符串中看到这一点。

像这样复制:int('')

如何修复取决于您要实现的目标,一种方法可能是timestamp='0'+now_var[27:38]