Python的datetime模块使用

两个常量

MAXYEAR:9999

MINYEAR:1

五个类

datetime.datetime:日期时间类

datetime.date:日期类

datetime.time:时间类

datetime.timedelta:时间间隔,即两个时间点之间的长度

datetime.tzinfo:时区相关信息

datetime.datetime

参数

datetime.datetime(year, month, day[, hour[, minute[, second[, microsecond[,tzinfo]]]]])

常用实例方法

datetime.datetime.now() # 2019-01-02 10:08:07.611755
# 返回当前系统时间

datetime.datetime.now().ctime() # Wed Jan  2 10:08:07 2019
# 返回一个表示日期的字符串,相当于 time 模块的 time.ctime(time.mktime(d.timetuple()))

datetime.datetime.now().date() # 2019-01-02
# 返回当前系统时间的日期部分

datetime.datetime.now().time() # 10:08:07.611885
# 返回当前系统时间的时间部分

datetime.datetime.fromtimestamp(1546393545.889359) # 2019-01-02 09:45:45.889359
# 将时间戳转化为日期时间

datetime.datetime.now().replace(year=2020, hour=12) # 2020-01-02 12:08:07.611960
# 对datetime类内参数进行修改,返回新的datetime类

datetime.datetime.now().strftime(‘%b-%d-%Y %H:%M:%S‘) # Jan-02-2019 10:08:07
# 由日期时间格式转换为字符串格式

datetime.datetime.strptime(‘Apr-16-2017 21:01:35‘, ‘%b-%d-%Y %H:%M:%S‘)
# 由字符串格式转换为日期时间格式,2017-04-16 21:01:35

datetime.date

参数

datetime.date(year, month, day)

常用实例方法

datetime.date(year=2020, month=11, day=1) # 2020-11-01
# 根据参数创建date类

datetime.date.fromtimestamp(1546393545.889359) # 2019-01-02
# 根据时间戳生成date类

datetime.date.today() # 2019-01-02
# 返回当前日期

datetime.date.today().ctime() # Wed Jan  2 00:00:00 2019
# 返回一个表示日期的字符串

datetime.date.isoformat(datetime.date.today()) # 2019-01-02
datetime.date.isoformat(datetime.datetime.now()) # 2019-01-02
# 返回格式YYYY-MM-DD

datetime.date.today().replace(year=1999) # 1999-01-02
# 替换给定日期,原日期不变

datetime.date.today().strftime(‘%b-%d-%Y‘) # Jan-02-2019
# 按照指定格式格式化date实例

datetime.date.strftime(datetime.date.today(), ‘%b-%d-%Y %H:%M:%S‘)
# 按照指定格式格式化给定日期,Jan-02-2019 00:00:00

datetime.time

参数

datetime.time([hour[, minute[, second[, microsecond[, tzinfo]]]]])

常用实例方法

t = datetime.time(hour=10, minute=12, second=11)
t.replace(hour=2)  # 02:12:11
# 生成一个新的时间对象,用参数指定时间代替原有对象相应的属性

t.isoformat() # 10:12:11
# 返回一个ISO 8601格式的字符串

t.strftime(‘%H.%M.%S‘) # 10.12.11
# 按照指定格式输出时间字符串

datetime.timedelta

参数

所有参数都是可选的,可以是整数或浮点数,正数或负数。

datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)

常用实例方法

time_1 = datetime.datetime.now()
time_2 = datetime.datetime.now()
time_2 - time_1
# 一个timedelta实例

(time_2 - time_1).total_seconds()
# 两个时间之间总秒数

datetime类和datetime类之间的转化

d = datetime.date.today()
t = datetime.time(hour=10, minute=11, second=12)

dt = datetime.datetime.combine(d, t)
# 将date类d,time类t连接,组成datetime类dt,date类必须放在前面

dd = dt.date()
# 从datetime类中提取date类

tt = dt.time()
# 从datetime类中提取time类

时间日期格式化符号

符号 表示
%y 两位数年份表示(00-99)
%Y 四位数年份表示(0000-9999)
%m 月份(01-12)
%d 月内某一天(01-31)
%H 24小时制小时数(00-23)
%I 12小时制小时数(01-12)
%M 分钟数(00-59)
%S 秒数(00-59)
   
%a 本地简化星期名称(Wed)
%A 本地完整星期名称(Wednesday)
%b 本地简化月份名称(Jan)
%B 本地完整月份名称(January)
%c 本地相应的日期表示和时间表示(Tue Aug 16 21:30:00 2018)
%j 年内的一天(001-366)
%p 本地AMPM的等价符
%U 一年中星期数,以星期天为起始(00-53)
%w 星期(0-6)
%W 一年中星期数,以星期一为起始(00-53)
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区名称
%% %号本身

原文地址:https://www.cnblogs.com/jeemzz/p/11423220.html

时间: 2024-10-16 18:37:07

Python的datetime模块使用的相关文章

python的datetime模块实用小记

今天简单整理一下python的datetime模块使用中遇到的方法,感觉这个模块相当灵活, 实现相同的需求可以用多种方法解决. 所以我也不多描述和讲解这个模块的具体内容了, 仅作为记录和索引. 参考资料: https://docs.python.org/2/library/datetime.html 主要类: datetime:https://docs.python.org/2/library/datetime.html#datetime-objects timedelta: https://d

基于Python的datetime模块和time模块源码阅读分析

目录 1 前言  2 datetime.pyi源码分步解析 2.1 头部定义源码分析 2.2 tzinfo类源码分析 2.3 date类源码分析 2.4 time类源码分析 2.5 timedelta类源码分析 2.6 datetime类源码分析 2.7 格式化字符串 3 time模块time.pyi源码解析 1 前言 最近工作需求上对于datetime模块中的方法调用比较多,有时还要返回指定的格式,以及大小比较等情况.发现使用Python自带的datetime模块可以很好地实现相关需求,但是对

Python中datetime模块中strftime/strptime函数

python中datetime模块非常好用,提供了日期格式和字符串格式相互转化的函数strftime/strptime 1.由日期格式转化为字符串格式的函数为: datetime.datetime.strftime() 2.由字符串格式转化为日期格式的函数为: datetime.datetime.strptime() 3.两个函数都涉及日期时间的格式化字符串,列举如下: %a 星期几的简写;如 星期三为Web %A 星期几的全称;如 星期三为Wednesday %b 月份的简写; 如4月份为Ap

Python的datetime模块分析

datetime模块用于是date和time模块的合集,datetime有两个常量,MAXYEAR和MINYEAR,分别是9999和1. datetime模块定义了5个类,分别是 1.datetime.date:表示日期的类 2.datetime.datetime:表示日期时间的类 3.datetime.time:表示时间的类 4.datetime.timedelta:表示时间间隔,即两个时间点的间隔 5.datetime.tzinfo:时区的相关信息 一.首先看一下datetime.date类

python中datetime模块

Python提供了多个内置模块用于操作日期时间,像calendar,time,datetime.time模块我在之前的文章已经有所介绍,它提供 的接口与C标准库time.h基本一致.相比于time模块,datetime模块的接口则更直观.更容易调用.今天就来讲讲datetime模块. datetime模块定义了两个常量:datetime.MINYEAR和datetime.MAXYEAR,分别表示datetime所能表示的最 小.最大年份.其中,MINYEAR = 1,MAXYEAR = 9999

python——从datetime模块探索python的数据架构

问题出现于我试图向自建网页中加入实时时间开始. 我之前已经知道python中有有关事件和日期的模块datetime.以下导入datetime并作实验. >>> import datetime>>> type(datetime) <class 'module'> 可知datetime属于module(模块)类.此外,类似的时间相关模块还有time和calendar. There are two kinds of date and time objects: “

python中 datetime模块的详解(转载)

Python提供了多个内置模块用于操作日期时间,像calendar,time,datetime.time模块我在之前的文章已经有所介绍,它提供 的接口与C标准库time.h基本一致.相比于time模块,datetime模块的接口则更直观.更容易调用.今天就来讲讲datetime模块. datetime模块定义了两个常量:datetime.MINYEAR和datetime.MAXYEAR,分别表示datetime所能表示的最 小.最大年份.其中,MINYEAR = 1,MAXYEAR = 9999

python的datetime模块

导入datetime模块后用dir(datetime)命令查看 在datetime模块下有几个小模块,或叫类 (一)date小模块.处理年月日 也是先用dir(datetime.date)查看一下 其中有那么几个方法 1:today()显示今天的日期 如果嫌这样太麻烦,可以单独导入date这个小模块 2:date小模块是个类,可以对它实例化,可以加个日期参数 这样就可以对这个对象进行操作了 3:year  month day分别取得日期对象中的年月日. 4:weekday(),查看一周中的第几天

python学习--datetime模块

import datetime, calendar date = datetime.datetime.now() 获取的为当前系统时间 #1.返回昨天日期 def getYesterday(): today=datetime.date.today() oneday=datetime.timedelta(days=1) yesterday=today-oneday return yesterday #2.返回今天日期 def getToday(): return datetime.date.tod