前言:Python 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能。每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示。Python 的 time 模块下有很多函数可以转换常见日期格式。
1.函数time.time()用于获取当前时间戳
1 # -*- encoding: utf-8 -*- 2 3 import time # 引入time模块 4 5 time = time.time() 6 time1 = int(time.time()) 7 print "当前时间戳为:", time 8 print "当前时间戳为:", time1
结果如下:
当前时间戳为: 1645672408.37 当前时间戳为: 1645672408
2.获取当前时间
1 # -*- coding: UTF-8 -*- 2 3 import time 4 5 localtime = time.localtime(time.time()) 6 print "本地时间为 :", localtime
结果如下:
time.struct_time(tm_year=2022, tm_mon=2, tm_mday=24, tm_hour=11, tm_min=11, tm_sec=6, tm_wday=3, tm_yday=55, tm_isdst=0)
3.将时间戳转换为日期格式
1 # -*- encoding: utf-8 -*- 2 3 import time 4 5 time = time.time() #时间戳 6 time1 = int(time.time()) #整型时间戳 7 time2 = time.localtime(time1) #获取本地时间 8 time3 = time.strftime('%Y-%m-%d %H:%M:%S',time2) #打印按指定格式排版的时间 9 10 print time 11 print time1 12 print time2 13 print time3
简化(偷懒):如下
ts_day=time.strftime("%Y-%m-%d",time.localtime(int(time.time()))) #获取当前日期
结果如下:
1645674093.17 1645674093 time.struct_time(tm_year=2022, tm_mon=2, tm_mday=24, tm_hour=11, tm_min=41, tm_sec=33, tm_wday=3, tm_yday=55, tm_isdst=0) 2022-02-24 11:41:33
4.使用datetime模块
1 # -*- coding: UTF-8 -*- 2 3 import datetime 4 5 time1 = datetime.datetime.now() 6 print time1 7 time2 = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') 8 print time2
结果如下:
2022-02-24 11:44:59.363265 2022-02-24 11:44:59
python中时间日期格式化符号:
- %y 两位数的年份表示(00-99)
- %Y 四位数的年份表示(000-9999)
- %m 月份(01-12)
- %d 月内中的一天(0-31)
- %H 24小时制小时数(0-23)
- %I 12小时制小时数(01-12)
- %M 分钟数(00-59)
- %S 秒(00-59)
- %a 本地简化星期名称
- %A 本地完整星期名称
- %b 本地简化的月份名称
- %B 本地完整的月份名称
- %c 本地相应的日期表示和时间表示
- %j 年内的一天(001-366)
- %p 本地A.M.或P.M.的等价符
- %U 一年中的星期数(00-53)星期天为星期的开始
- %w 星期(0-6),星期天为星期的开始
- %W 一年中的星期数(00-53)星期一为星期的开始
- %x 本地相应的日期表示
- %X 本地相应的时间表示
- %Z 当前时区的名称
- %% %号本身