python datetime模块-Python datetime模块详解

本文介绍了Python中datetime模块的使用方法,包括获取当前时间、日期及时间转换等操作,并演示了如何利用datetime.timedelta进行时间差计算。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

datetime是python当中比较常用的时间模块,用于获取时间,时间类型之间转化等,下文介绍两个实用类。

一、datetime.datetime类:

datetime.datetime.now():返回系统当前时间(2018-09-18 18:39:55.921602)

datetime.datetime.now().date():返回当前时间的日期(2018-09-18)

datetime.datetime.now().time():返回当前时间的时分秒(18:40:24.946237)

datetime.datetime.ctime():将datetime.datetime类型转化成str类型

testtime =datetime.datetime.ctime(datetime.datetime.now())print(type(testtime))print(testtime)##Tue Sep 18 18:50:23 2018

时间格式转化成字符串:

datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"):返回时间的字符串(2018-11-09 14:42:36)

字符串转化成时间格式

datetime.datetime.strptime("2018-11-09 14:42:36","%Y-%m-%d %H:%M:%S"):返回datetime.datetime类型的时间(2018-11-09 14:42:36)

代表日期格式化的符号

%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 当前时区的名称

二、datetime.timedelta

datetime.timedelta用来计算两个datetime.datetime或者datetime.date类型之间的时间差。

def __new__(cls, days=0, seconds=0, microseconds=0,

milliseconds=0, minutes=0, hours=0, weeks=0):

从构造函数中来看,参数可选:days、seconds、microseconds、milliseconds、minutes、hours、weeks,且默认是0。

这个函数能很方便的解决时间之间的计算问题,比如说我们想知道300天前的今天是几号,可以这样实现:

>>> now =datetime.datetime.now().date()>>>now

datetime.date(2018, 11, 9)>>> delta = datetime.timedelta(days = 300)>>> now -delta

datetime.date(2018, 1, 13)

datetime.timedelta()也可以多个参数,比如计算300天12小时前的时间。

>>> now =datetime.datetime.now()>>>now

datetime.datetime(2018, 11, 9, 15, 30, 36, 156323)>>> delta = datetime.timedelta(days = 300,hours = 12)>>> now -delta

datetime.datetime(2018, 1, 13, 3, 30, 36, 156323)

计算总天数和秒数。

>>> datetime.timedelta(days=1,hours = 2).days1

>>> datetime.timedelta(days=1,hours = 2).total_seconds()93600.0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值