我在Python中有一个datetime.time
对象(没有日期部分),并且想知道从午夜开始已经过了多少秒。 t.hour * 3600 + t.minute * 60 + t.second
肯定会奏效,但是会有更多pythonic的方式吗?如何将时间对象转换为自python午夜以来的秒数?
0
A
回答
0
你可以使用datetime.combine()
创建一个datetime
对象,获得timedelta
:
from datetime import datetime, timedelta
td = datetime.combine(datetime.min, t) - datetime.min
seconds = td.total_seconds() # Python 2.7+
integer_milliseconds = td // timedelta(milliseconds=1) # Python 3
支持微秒和任何其他未来datetime.time.resolution
。
0
不幸的是,您似乎无法从两个datetime.time
对象中获取timedelta
对象。但是,你可以建立一个,并用它与total_seconds()
获得自午夜起的秒数:
In [63]: t = datetime.time(hour=12, minute=57, second=12) # for example
In [64]: datetime.timedelta(hours=t.hour, minutes=t.minute,
seconds=t.second).total_seconds()
Out[64]: 46632.0
+0
你忘了't.microsecond'部分 – jfs
相关问题
- 1. 将午夜以后的毫秒数转换为时间对象
- 2. 将纳秒(自午夜以来)转换为可打印时间?
- 3. 如何将时间戳转换为自午夜以来的秒数?
- 4. 将“自午夜以来的分钟数”转换为时间(转换为NSDate?)
- 5. 将日期时间从ISO_INSTANT转换为午夜数秒
- 6. 如何在Scala中编写脚本,将当前时间转换为自午夜以来的秒数?
- 7. 将分钟自午夜转换为上午/下午时间的函数
- 8. 自午夜以来的时间
- 9. 如何在几秒钟内获得午夜以来的时间
- 10. 干净地将时间偏移从午夜转换为时间对象?
- 11. 自Unix时代以来,将时间戳记转换为秒数
- 12. 将时间戳转换为自世纪以来的毫秒数
- 13. 午夜时间到秒之间
- 14. 时间戳午夜毫秒转换得到弄乱
- 15. Python:从午夜1970.01.01 GMT到任意时间GMT的秒数?
- 16. PHP - 将午夜日期转换为时间戳
- 17. 如何将unix时间戳(自epoch以来的秒数)转换为Ruby DateTime?
- 18. 如何将日期时间转换为自1970年以来的秒数?
- 19. 有没有办法将DateTimeOffset转换成自午夜以来的分钟数?
- 20. 转换时间戳表示1970年1月1日午夜协调世界时(UTC)以来的秒数。
- 21. 转换DATATIME以毫秒为单位自午夜UTC或使用熊猫
- 22. 如何将时间对象转换为Python中的分钟数
- 23. 将秒数自1-1-1999转换为Python的日期/时间
- 24. 将日期和时间转换为1970年以来的秒数
- 25. 如何获得UTC秒纪元以来直到午夜
- 26. 如何计算午夜时间间隔?
- 27. 减少午夜以来的毫秒数,1970年1月1日
- 28. 如何将Java时代以来的秒数转换为小时/分钟/秒?
- 29. 将时间转换为秒+毫秒秒
- 30. 如何将时间量转换为秒?
向我们展示您尝试过的代码? –