作者: | 来源:互联网 | 2023-09-23 21:03
0x00获取当前日期时间datetime库使用datetime.datetime.now()方法或datetime.datetime.today()来获得当前的时间,
0x00 获取当前日期时间
datetime库使用datetime.datetime.now()
方法或datetime.datetime.today()
来获得当前的时间,并使用方法strftime
将获得的串转换为字符类型,此时可以以固定格式输出。
其用法为:
import datetime
time1 = datetime.datetime.now()
time2 = datetime.datetime.today()
#time1与time2都含有day,year,hour等成员,可独立输出
time1.strftime('%Y-%m-%d %H:%M:%S')#括号中参数为格式化类型
格式列表为:
%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 当前时区的名称
%% %号本身
相应的,也阔以将一个str类型的自定义的日期转换为datetime类型,使用方法datetime.datetime.strptime()
,其用法为:
T_time = '2018-12-12 16:00:00'
time = datetime.datetime.strptime(T_time,'%Y-%m-%d %H:%M:%S')
获得一个datetime类型的日期。需要注意的是,如果输出时没有指定前面的%Y-%m-%d
,会以默认格式输出;如果转换时只有时间没有日期,则会将初始时间1900-01-01
输出。
0x01获取当前日期,以及日期的计算
获取当前日期可以使用datetime.date.today()
方法,与获取日期时间的方法相同,同样也包含了year、month、day
几个成员,可以单独输出。
当我们需要进行日期的计算时,用到了timedelta
方法,timedelta
函数原型为:
datetime.timedelta(days=0, secOnds=0, microsecOnds=0, millisecOnds=0, minutes=0, hours=0, weeks=0)
其中成员分别为:
days 天
seconds 秒
microseconds 微秒
milliseconds 毫秒
minutes 分
hours 时
weeks 7天
计算明天的日期:
tomorrow = datetime.date.today() + datetime.timedelta(days = 1)
print tomorrow
计算一小时后的时间:
hours_later = datetime.datetime.now() + datetime.timedelta(hous = 1)
print hours_later
通过strptime
方法计算任意两个日期相差多少天:
T_time1 = '2019-2-22'
T_time2 = '2019-1-22'
day1 = datetime.datetime.strptime(T_time1,'%Y-%m-%d')
day2 = datetime.datetime.strptime(T_time2,'%Y-%m-%d')
print (day1 - day2).days
0x0x3
上文Python与Excle交互应用实践(openpyxl与xlwings裤)
中从excle中读取到的日期类型数据也阔以转换为str类型,从而与任何日期比较,可能是当时没有想到吧,还是需要不断的积累,才可以不懵。。。。小错误小错误