欢迎加入 Python 官方文档翻译团队:https://www.transifex.com/python-doc/


datetime 模块提供了可以通过多种方式操作日期和时间的类。在支持日期时间数学运算的同时,实现的关注点更着重于如何能够更有效地解析其属性用于格式化输出和数据操作。

datetime 模块包括 data、time 的所有功能,常用的 datatime 实例方法如下:

datetime.now():获取当天的日期和时间

datetime.date(t):获取当天的日期,t 为 datetime 实例参数

datetime.time(t):获取当天的时间,t 为 datetime 实例参数

datetime.ctime(t):获取【星期 月 日 时 分 秒 年】格式的字符串,t 为 datetime 实例参数

datetime.utcnow(t):获取当前的 UTC(Universal Time Coordinated,协调世界时)日期和时间

datetime.timestamp(t):获取当天的 UNIX 时间戳,t 为 datetime 实例参数

datetime.fromtimestamp(t_tamp):根据时间戳返回 UTC 日期时间,t_tamp 为时间戳浮点数

datetime.combine(d, t):绑定日期、时间,生成新的 datetime 对象,d 为日期对象,t 为时间对象

datetime.strptime(date_str, sf):根据字符串和指定的格式生成新的 datetime 对象,date_str 为字符串日期时间,sf 为指定格式

datetime.timetuple(t):把 datetime 对象所有属性转为时间元组对象,t 为 datetime 实例参数

t.isocalendar():获取 ISO 格式的日期(元组形式),t 为 datetime 实例对象

t.strftime(date_str_format):获取自定义格式的日期时间字符串,t 为 datetime 实例对象,date_str_format 指定格式


datetime 模块里面的 datetime 类基本功能示例:

>>> from datetime import datetime, date, time          # 从 datetime 模块导入 datetime、date、time
>>>
>>> print(datetime.now())                              # 返回当天的日期和时间
2020-02-21 15:32:27.356006
>>>
>>> today = datetime.now()                             # 定义 today 为当前日期时间对象
>>> print(datetime.date(today))                        # 返回当天的日期对象
2020-02-21
>>>
>>> print(datetime.time(today))                        # 返回当天的时间对象
15:57:38.770308
>>>
>>> print(datetime.ctime(today))                       # 返回【星期 月 日 时 分 秒 年】格式的字符串
Fri Feb 21 15:57:38 2020
>>>
>>> print(datetime.utcnow())                           # 返回当前的 UTC 日期和时间
2020-02-21 07:59:27.180956
>>>
>>> print(datetime.timestamp(today))                   # 返回当天的 UNIX 时间戳,浮点数类型
1582271858.770308
>>>
>>> print(datetime.fromtimestamp(datetime.timestamp(today)))   # 根据时间戳返回 UTC 日期时间
2020-02-21 15:57:38.770308
>>>
>>> date1 = date(2020,2,21)                            # 使用 date 类,实现实例化 date1 对象
>>> time1 = time(16,2,30)                              # 使用 time 类,实现实例化 time1 对象
>>> print(datetime.combine(date1, time1))              # 绑定日期、时间,生成新的 datetime 对象
2020-02-21 16:02:30
>>>
>>> NewDateTime = datetime.strptime("21/2/20 16:10", '%d/%m/%y %H:%M')   # 用字符串和指定格式生成新的 datetime 对象
>>> print(NewDateTime)
2020-02-21 16:10:00
>>>
>>> today = datetime.now()                             # 定义 today 为当前日期时间对象
>>> for i in datetime.timetuple(datetime.now()):       # 将 today 当作时间元组,循环打印print(i)2020
2
21
17
57
43
4
52
-1
>>>
>>> print(today.isocalendar())                           # ISO 格式的日期
(2020, 8, 5)
>>>
>>> print(today.strftime('%Y 年 %m 月 %d 日 %H:%M:%S %p   # 对 datetime 对象自定义格式,返回字符串类型的值
2020 年 02 月 21 日 17:57:02 PM

strftime()strptime() 方法会用到时间日期格式化符号,各个格式化符号所代表的意思如下:

格式化符号 含义
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%d 月内中的一天(0-31)
%f 以十进制数表示的毫秒,在左侧补零
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%j 年内的一天(001-366)
%m 月份(01-12)
%M 分钟数(00-59)
%p 本地A.M.或P.M.的等价符
%S 秒(00-59)
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%z ±HHMM[SS[.ffffff]] 形式的 UTC 差值(如果对象为简单型则为空字符串)
%Z 当前时区的名称
%% %号本身

【Python 标准库学习】日期和时间处理库 — datetime相关推荐

  1. C++ 使用 chrono 库处理日期和时间

    C++11 中提供了日期和时间相关的库 chrono,通过 chrono 库可以很方便地处理日期和时间,为程序的开发提供了便利.chrono 库主要包含三种类型的类:时间间隔duration.时钟cl ...

  2. python中当地时间_Python 日期和时间

    Python日期和时间 阅读本文需要4分钟 Python 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能. Python 提供了一个 time 和 calendar 模块可以用于格式化日 ...

  3. 【Python 标准库学习】时间相关的函数库 — time

    欢迎加入 Python 官方文档翻译团队:https://www.transifex.com/python-doc/ time 模块提供了各种时间相关的函数,该模块中的大多数函数是调用了所在平台 C ...

  4. 【Python 标准库学习】数据科学计算库 — math

    欢迎加入 Python 官方文档翻译团队:https://www.transifex.com/python-doc/ math 模块官方文档:https://docs.python.org/3/lib ...

  5. [Python Machine Learning] 学习笔记之scikit-learn机器学习库

    1. scikit-learn介绍 scikit-learn是Python的一个开源机器学习模块,它建立在NumPy,SciPy和matplotlib模块之上.值得一提的是,scikit-learn最 ...

  6. python读取邮件发送日期和时间_Python读取指定日期邮件的实例

    背景:9月份有部分数据缺失,这部分数据在邮箱里,需要重新拉取,但是每天几百封邮件,总共有6.7万封邮件,使用stat()和retr(which)结合遍历很 耗时 基于如上背景,初始大致思路为: 使用二 ...

  7. lua工具库penlight--05日期和时间

    创建和显示时间 Date类提过了简洁的使用date和time的方法.它依赖于os.date和os.time. Date对象可以通过table创建,如果os.date,同时提过了获取和设置date 成员 ...

  8. (一)boost库之日期、时间

    一.计时器  计时器,通常在一个项目中统计一个函数的执行时间是非常实用的. #include <boost/timer.hpp> void PrintUserTime() { boost: ...

  9. python读取邮件发送日期和时间_Python获取邮件的日期时间Gmai

    我试图用python为特定关键字从Gmail下载附件,代码如下:def read_email_from_gmail(): mail = imaplib.IMAP4_SSL(imap_url) mail ...

最新文章

  1. tcp协议不具备的功能是_TCP协议的状态深度解析,你知道的和不知道的都在这篇文章(干货)...
  2. 多个PHP版本环境搭建(nginx,php)
  3. 什么是 SAP Business Function
  4. oracle 添加监听地址,oracle批改监听地址为localhost
  5. Linux安装MYSQL5.7教程(一次成功)
  6. Element UI el-table 表格多选的使用
  7. P1019 单词接龙
  8. 查找算法-------插值查找
  9. Java同步三种实现方式
  10. 大话跨度原始服务器信息怎么去除,大话西游2合服历史:独家整理 寻找你最初的服务器...
  11. matlab符号函数与对其的常用操作
  12. CNN网络实现垃圾分类
  13. 一只小野鸭的超能量(超有启发性)
  14. HTML常用meta小结
  15. 文章被推荐到首页,在哪里可以看到?
  16. 注意力机制 SE-Net 原理与 TensorFlow2.0 实现
  17. echarts3 使用((绘制各种图表,地图))
  18. 解决浏览器不支持display:flex的问题
  19. 【新书推荐】【2020.02】可穿戴设备传感器和天线的设计与优化
  20. 前端面试题--详解flex

热门文章

  1. 三白话经典算法系列 Shell排序实现
  2. 构建之法现代软件概述
  3. 跨浏览器开发工作小结
  4. log4j无厘头异常
  5. C#中ref与out区别
  6. 689 Maximum Sum of 3 Non-Overlapping Subarrays
  7. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol52]50.什么是BLS基于对的签名方案?
  8. [Leetcode][第257题][JAVA][二叉树的所有路径][BFS][DFS]
  9. [Leedcode][JAVA][第210 题][课程表 II][拓扑排序][BFS][DFS][有向图]
  10. [剑指offer][JAVA][面试题56 - I][第260题][位运算][HashSet]