【发布时间】:2014-08-17 05:42:05
【问题描述】:
我正在尝试增加时间。
我想得到这样的小时格式:13:30:45,123(在 Java 中:"HH:mm:ss,SSS"),但 Python 显示 13:30:45,123456("%H:%M:%S,%f")(6 位微秒)。
我在网上阅读并找到了可能的解决方案,例如:
from datetime import datetime
hour = datetime.utcnow().strftime('%H:%M:%S,%f')[:-3]
print(hour)
输出为:04:33:16,123
但这是一个糟糕的解决方案,因为如果小时为例如:01:49:56,020706,则输出为:01:49:56,020,则右侧应为:01:49:56,021(四舍五入)。
真正的目的是如果我增加毫秒,甚至达到秒数。
示例:(我想增加 500 微秒)
如果输入:00:01:48,557,则输出应为:00:01:49,057
Java程序的代码(运行良好)是:
SimpleDateFormat df = new SimpleDateFormat("HH:mm:ss,SSS");
System.out.print("Input the time: ");
t1 = in.next();
Date d = df.parse(t1);
Calendar cal = Calendar.getInstance();
cal.setTime(d);
cal.add(Calendar.MILLISECOND, 500);//here increase the milliseconds (microseconds)
t2 = df.format(cal.getTime());
System.out.print("The Output (+500): "+t2);
我不知道 Python 中是否存在 SimpleDateFormat(Java 中)之类的东西。
【问题讨论】:
标签: python date-format