这可能是一个愚蠢的问题,但我找不到答案:
我有一个Python代码,它像这样打印时间戳:
2015-05-19 22:27:00.688441
产生此字符串的代码如下所示:
print str(datetime.datetime.strptime(time_value, '%Y-%m-%d %H:%M:%S.%f'))
我想在Perl(5.14版)中做同样的事情。除了最后的小数部分,我可以得到此字符串的所有部分(%f)
。
如何在Perl中获得完全相同的字符串?
PS:我尝试使用Time::HiRes
模块。
use Time::HiRes;
my ($seconds, $microseconds) = gettimeofday;
如果不知何故,我可以使用$seconds
到localtime()
,这可能吗?如果是这样,那又如何?
原始问题的扩展:如果我有一个变量$time_value
-假设我已经从某个地方检索到了此变量中的时间戳字符串,如何将其格式化为所需的格式,即以微秒为单位的时间戳?
最类似于Python的方式是安装和使用DateTime。请注意,微秒不是标准strptime
格式的一部分。DateTime使用%N
小数秒。%6N
表示派系秒数到6位(微秒)。
# `DateTime->now` uses seconds, so we have to supply our own
# hires time.
use Time::HiRes qw(time);
use DateTime;
print DateTime->from_epoch( epoch => time )->strftime('%Y-%m-%d %H:%M:%S.%6N');
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句