我使用tic()
和toc()
函数获得了一些时间间隔,它们以秒为单位。假设我有一个时间间隔dt=3600.125
秒。如何使用Julia打印"H:M:S.s“格式?
发布于 2017-11-09 20:17:00
你可以做你自己的功能。要知道的主要函数是divrem
,它在一个方便的函数调用中给出除数和余数。
dt=3600.125
function hmss(dt)
(h,r) = divrem(dt,60*60)
(m,r) = divrem(r, 60)
#(s,r) = divrem(r, 60)
string(Int(h),":",Int(m),":",r)
end
hmss(dt)
hmss(3452.98)
发布于 2017-11-10 01:11:55
如果将其转换为日期格式,则可以使用这种方法。
julia> t1 = now()
2017-11-10T10:00:51.974
# Wait
julia> t2 = now()
2017-11-10T10:10:07.895
julia> x = Dates.canonicalize(Dates.CompoundPeriod(t2-t1))
9 minutes, 15 seconds, 921 milliseconds
julia> x.periods
3-element Array{Base.Dates.Period,1}:
9 minutes
15 seconds
921 milliseconds
julia> x.periods[2]
15 seconds
julia> x.periods[2].value
18
发布于 2017-11-09 17:06:32
看一看手册中的日期部分。
不确定这是否是最有效的方法,但这是可行的,例如:
julia> Dates.format(DateTime("2017-10-01T01:02:03"), "H:M:S.s")
"1:2:3.0"
https://stackoverflow.com/questions/47213975
复制