文档目录

  • 1、time模块
    • 时间元组
    • 格式化符号
    • 日期转换
    • 日历模块
  • 2、datetime模块
    • 2.1、日期时区
    • 2.2、当前时间
    • 2.3、常用操作
    • 2.4、时间加减
  • 3、dateutil模块

1、time模块

  • 当前时间戳
import timefloatTime=time.time()

说明:
1)使用 time.time()返回的是一个 float类型的结果;
2)该值是当前时间距离 1970.1.1日零时的秒数;

  • 本地时间
import time
localtime=time.localtime()# another method
localtime=time.localtime(time.time())

说明:此处上述2种结果都一致,结果如下:

time.struct_time(tm_year=2022, tm_mon=3, tm_mday=19, tm_hour=13, tm_min=0, tm_sec=4, tm_wday=5, tm_yday=78, tm_isdst=0)

时间元组

时间元组 time.struct_time结构如下:

序号 属性
0 tm_year 4位年份值
1 tm_mon 月份值:1~12
2 tm_mday 天数值:1~31
3 tm_hour 小时值:0~23
4 tm_min 分钟值:0~59
5 tm_sec 秒数值:0~59
6 tm_wday 周第几天:0~6(0是周一)
7 tm_yday 年第几天:0~366
8 tm_isdst 是否夏令时(1:夏令时;0:非夏令时;-1:未知)

说明:时间元组在格式化字符串的时候,没有毫秒位;

格式化符号

符号 含义
%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)
%f 毫秒,6位整数,000000~999999;
%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 当前时区的名称
%% %符号本身

日期转换

  • 日期格式化
time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
  • 字符转日期
time.strptime("2022-03-22 14:40:11", "%Y-%m-%d %H:%M:%S")

说明:time.strptime 返回类型为 time_struct;

time.mktime(tupletime)

说明:time.mktime 输入为时间元组(time_struct),返回为时间戳(float);

日历模块

import calendar
mon_cal=calendar.month(year,month)

2、datetime模块

该模块主要使用 几种类,time、date、datetime、timedelta、timezone;

类库介绍:https://docs.python.org/3/library/datetime.html

2.1、日期时区

在计算机中时间实际上是用数字表示的。把1970年1月1日 00:00:00 UTC+00:00时区的时刻称为epoch time,记为0(1970年以前的时间timestamp为负数),当前时间就是相对于epoch time的秒数,称为timestamp。

timestamp = 0 = 1970-1-1 00:00:00 UTC+0:00
对应北京时间:
timestamp = 0 = 1970-1-1 08:00:00 UTC+8:00

时区转换有2种方式,一种是先获取UTC标准时间,然后转换为别的时区;另外一种是先获取一个带时区的日期,然后转换为别的时区;

前置导入类
from datetime import timezone

  • 获取UTC时间
    utc_dt = datetime.utcnow().replace(tzinfo=timezone.utc)

  • utc_dt 转换北京时区 bj_dt
    bj_dt = utc_dt.astimezone(timezone(timedelta(hours=8)))

  • utc_dt 转换东京时区 dj_dt
    bj_dt = utc_dt.astimezone(timezone(timedelta(hours=9)))

  • utc_bj 转换 utc_dj 时区
    dj_dt = bj_dt.astimezone(timezone(timedelta(hours=9)))

2.2、当前时间

from datetime import datetime
from datetime import date
  • datetime.now()

  • datetime.today()

  • datetime.fromtimestamp(time.time())

  • UTC标准时间
    datetime.utcfromtimestamp(time.time())

2.3、常用操作

前置导入类

from datetime import date
from datetime import time
from datetime import datetime
  • 初始化 date 变量
    v_d = date(2022, 8, 15)

  • 初始化 time 变量
    v_t = time(13,36,57)

  • date 和 time 合并
    v_dt = datetime.combine(v_d,v_t)

  • 时间戳转 datetime 类
    datetime.fromtimestamp(float)

  • 字符串转 datetime 类
    datetime.fromisoformat(strdate)

  • datetime 转 timestamp
    v_dt.timestamp()

  • 字符串转 datetime 类
    v_dt = datetime.strptime("2022-08-15 13:44:57", "%Y-%m-%d %H:%M:%S")

  • datetime 转时间元祖
    v_dt.timetuple()

  • datetime转格式化字符

v_dt = datetime.now()
str_dt = v_dt.strftime("%Y-%m-%d %H:%M:%S.%f")

2.4、时间加减

前置导入类

from datetime import datetime
from datetime import timedelta
  • 加减操作
dt_add = datetime.now() + timedelta(days= ,hours= ,minutes= ,seconds= ,milliseconds=)

参数选项:days、hours、minutes、seconds、milliseconds;

3、dateutil模块

类库手册:https://dateutil.readthedocs.io/en/stable/index.html

dateutil 模块属于三方库,常用的类有 relativedelta、rrule、parser、easter;

类库导入:
pip install python-dateutil

======================================== over ========================================

Python—6.1、日期时间相关推荐

  1. python.freelycode.com-Python日期时间处理: datestuff

    Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发. 问题: 在一些场景下datetime包的使用并非那么简便易用,同时很难找到其他的较为完整的替代方案. 原因 ...

  2. Python笔记:日期时间获取与转换

    世界时(Universal Time, UT)是根据地球自转周期确定的时间,1s为全年内每日平均长度的1/86400,由于地球绕太阳公转的轨道不是圆的,地球与太阳之间的距离不是固定的,导致太阳相对绕地 ...

  3. Python - 字符串转日期时间,格式的处理以及时间加减计算

    1,字符串转日期 import datetime strTime = '2022-06-11 11:03' strTime = datetime.datetime.strptime(strTime,& ...

  4. python中日期使用_在Python中使用日期时间的每月总金额

    有了熊猫,它会更直观,更容易理解 在数据框中加载数据 df=pd.DataFrame([[datetime.date(2018, 8, 10), 1076.2392505636847], [datet ...

  5. python常用的日期时间模块

    今天.昨天.明天 import datetime today = datetime.date.today() # 今天 yesterday = today - datetime.timedelta(d ...

  6. python中的日期时间处理,提取年月日

    python中时间日期格式化符号: %y 两位数的年份表示(00-99) %Y 四位数的年份表示(000-9999) %m 月份(01-12) %d 月内中的一天(0-31) %H 24小时制小时数( ...

  7. python时间格式化代码_Python代码中如何将”日期时间”格式化为自己所需的样式呢?...

    摘要: 下文讲述Python代码中将日期时间格式化为时间的方法分享,如下所示: 实现思路: 使用time.strftime函数将 一个时间元组格式化自定义的模式 strftime函数语法: time. ...

  8. python日期时间_Python日期时间

    python日期时间 Python日期时间 (Python datetime) In this post, we will study about how to use the python date ...

  9. Python中的对日期时间的处理

    我们可以通过学习在Python中对日期时间的处理,可以在快速的完成工作,比如: 将日期时间作为日志信息的内容输入 计算某一个功能的执行时间 用日期命名一个文件的名称 记录或者展示文件的发布或修改时间 ...

  10. python周天为一周的开始_Python中的对日期时间的处理

    image 我们可以通过学习在Python中对日期时间的处理,可以在快速的完成工作,比如: 将日期时间作为日志信息的内容输入 计算某一个功能的执行时间 用日期命名一个文件的名称 记录或者展示文件的发布 ...

最新文章

  1. 带AM或者PM的时间字符串转data类型
  2. 挺住了这一波,微盟正在进化
  3. [PY3]——内置数据结构(4)——字符串格式化(format)
  4. Django Cookie于Session
  5. 五种世界顶级思维-20190303
  6. QT学习笔记(九):遍历容器-迭代器(iterators)
  7. Django账号绑定邮箱时发送链接
  8. NB-IoT终端进网检测介绍
  9. java 微信小程序 在线学习系统app
  10. CVPR 2021 预讲 · 华为诺亚专场,5 篇精华报告,覆盖NAS、蒸馏、检测和降噪
  11. 名悦集团:冬季汽车开暖风有哪些注意事项
  12. git原理学习记录:从基本指令到背后原理,实现一个简单的git
  13. 股票学习-20220613
  14. mysql分区表去重复_MySQL分区表管理
  15. 如何理解那些令人困惑的Windows 7文件/共享权限
  16. echarts 绘制省份地图 [ 把不同省份的市合并在一起 ]
  17. 十秒钟入门一分钟搭建Discuz论坛
  18. Oracle的12c版本打补丁
  19. Hibernate方言
  20. 服务器资源监控工具———node_exporter

热门文章

  1. gis插入的文本怎么搞成两行_怎么样制作标书?Word排版技巧大全,让标书制作更简单...
  2. 一号店静态html源代码,一号店html模板
  3. 基于密钥的ssh远程登录
  4. Photoneo 3D相机常见问题汇总
  5. 【kubesphere】Deploy to kubernets阶段报错
  6. 心理学考研难度 分析
  7. 基于MATLAB的疲劳驾驶检测系统
  8. 花了我很长时间整理出来的绿色软件[小蓉整理]
  9. 你随身携带的录音工作室:录音机HD“录音工作室”9.0.4评测
  10. cmake教程5-macro宏定义以及传递参数给源文件