python时间戳和日期的转换

time库相关方法

  • struct_time:time库定义的时间类型,包含一个 9元元组,其中 tm_isdist 表示是否为闰年。例如:
time.struct_time(tm_year=2018, tm_mon=10, tm_mday=12, tm_hour=13, tm_min=51, tm_sec=29, tm_wday=4, tm_yday=285, tm_isdst=0)
  • time.gmtime([secs]):接受一个时间戳,返回 UTC标准的 struct_time 。没有传入时间戳则以当前时间的时间戳为参数。
  • time.localtime([secs]) :与 time.gmtime([secs])相似,不过返回的是以当前时区为标准的 struct_time
  • time.mktime(t):接受一个 struct_time类型的变量,返回变量对应的时间戳。
  • time.sleep(secs):阻塞程序 secs秒。
  • time.strftime(format[, t]):接受一个 struct_time类型的变量,返回 format指定格式的时间。没有传入 struct_time参数,则默认以当前时间作为参数。
  • time.strptime(string[,format]):接受一个时间字符串,根据给定的 format将其转换为 struct_time类型并返回。如果 format与给定的字符串不匹配,会报 ValueError错误。
  • time.time():返回当前时间的时间戳。

应用:时间戳与格式化日期的相互转换

import time


def strftime(timestamp, format_string='%Y-%m-%d %H:%M:%S'):
    return time.strftime(format_string, time.localtime(timestamp))

def strptime(string, format_string='%Y-%m-%d %H:%M:%S'):
    return time.mktime(time.strptime(string, format_string))


print(strftime(time.time()))

print(strptime('2018-10-11 15:08:24'))

format控制字符

控制字符 含义
%a 当地星期名缩写
%A 当地星期名全写
%b 当地月份名缩写
%B 当地月份名全写
%c 标准化输出,类似:Fri Oct 12 22:01:11 2018
%d 日期数字,0到 31
%H 24小时制小时
%I 12小时制小时
%j 日期在一年中是第多少天,例如 299
%m 月份数字
%M 分钟数字
%p 显示 AM或 PM
%S 秒数数字
%U 一年中第几周(以周日为一周第一天计算,0到 53)
%w 一周中第几天,0到 6
%W 一年中第几周(以周一为一周第一天计算,0到 53)
%x 当地日期,格式为 10/12/18
%X 当地 时间,格式为 22:10:01
%y 年份后两位,如 2018年就是 18
%Y 年份全写,如 2018年就是 2018
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容