下面是对Python中time模块时间戳、时间字符串格式化与转换的详细讲解。
时间戳
时间戳是指从格林威治时间1970年01月01日00时00分00秒开始到现在的总秒数,也称作Epoch时间或Unix Epoch时间。
Python中的time模块提供了获取当前时间戳的函数:time()。就像这样:
import time
timestamp = time.time()
print(timestamp)
这里,我们导入了Python中的time模块并调用了time()函数获取当前时间戳。执行后,会输出当前时间的时间戳。
如果我们想要将一个时间戳转化为指定格式的时间字符串,比如转化为“年-月-日 时:分:秒”的格式,则可以使用Python中的strftime()函数,如下所示:
import time
timestamp = 1591313479.836594
time_str = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(timestamp))
print(time_str)
在这个示例中,我们指定了一个13位的时间戳timestamp,并用time.localtime()将其转换为本地时间。然后我们调用了strftime()函数将本地时间转化为指定格式的时间字符串。
时间字符串格式化与转换
除了将时间戳转化为时间字符串,time模块还提供了将时间字符串转化为时间戳的函数,即strptime()函数。它可以把指定格式的字符串(如"2020-06-05 22:32:59")转化为对应的时间戳。
import time
time_str = "2020-06-05 22:32:59"
timestamp = time.mktime(time.strptime(time_str, "%Y-%m-%d %H:%M:%S"))
print(timestamp)
在这个示例中,我们定义了一个时间字符串time_str,然后通过strptime()函数指定了时间字符串的格式"%Y-%m-%d %H:%M:%S",将时间字符串转化为struct_time类型的时间结构体。接着,我们再用mktime()将时间结构体转化为时间戳。
此外,我们还可以使用strftime()函数将时间戳或时间结构体转化为日期时间字符串,类似前面时间戳转换为时间字符串的示例:
import time
timestamp = 1591313479.836594
time_str = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(timestamp))
print(time_str)
time_tuple = (2020, 6, 5, 22, 32, 59, 0, 0, 0)
time_str = time.strftime('%Y-%m-%d %H:%M:%S', time_tuple)
print(time_str)
在这个示例中,我们分别定义了一个时间戳timestamp和一个时间结构体time_tuple,然后用strftime()函数将它们转换为指定格式的日期时间字符串。
到这里,我们已经详细讲解了Python中time模块的时间戳、时间字符串格式化与转换,希望对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python之time模块的时间戳,时间字符串格式化与转换方法(13位时间戳) - Python技术站