python中datetime模块时间的使用

#MATLAB# datetime和duration函数用法 datetime和duration函数用法 阅读详情
AI摘要

本文介绍Python中datetime模块表示时间的方法。datetime类型综合,有表示日期、时间、日期时间的子包。介绍了各构造函数传参构造时间的方式,还提及时间格式化和反格式化函数,以及时间序列、datetime和time的转换,还有datetime.now()类和timedelta对象。

python中,有两个模块用来表示时间,一个是time模块,一个是datetime模块。之前我们讲述过time模块怎么使用时间,这篇我们看下datetime模块怎么表达时间。

datetime类型是一个比较综合的类型,它下面有子包datetime.date专门用来表示日期,datetime.time专门用来表示时间,而datetime.datetime就表示日期时间,其中还有datetime.datetime.now()和datetime.datetime.today()来表示当前时间,这点和time.time(), time.localtime()表示当前时间是类似的。

1. datetime.date():这是一个构造函数,需要传参年,月,日的值来构造一个日期

d1 = datetime.date(2025, 1, 2)
print('新构造的日期是:', d1)

输出: 

新构造的日期是: 2025-01-02

2. datetime.time(): 这也是一个构造函数,需要传参时、分、秒的值来构造一个时间

t1 = datetime.time(12, 22, 29)
print('新构造的时间是:', t1)

输出:

新构造的时间是: 12:22:28

3. datetime.datetime(): 这同上,需要分别传参年、月、日、时、分、秒来构造一个日期时间

dt1 = datetime.datetime(2025, 1, 2, 12, 25, 29)
    print('新构造的日期时间是:', dt1)

输出:

新构造的日期时间是: 2025-01-02 12:25:29

4. datetime模块的时间格式化和反格式化,分别用到datetime.strftime()和datetime.strptime()函数

ft = dt1.strftime('%Y-%m-%d %H:%M:%S')
print('字符串时间是:', ft)

o_dt = datetime.datetime.strptime(ft, '%Y-%m-%d %H:%M:%S')
print('从字符串转换为datetime: ', o_dt)

输出:

字符串时间是: 2025-01-02 12:25:29
从字符串转换为datetime类型: 2025-01-02 12:25:29

5. datetime模块的时间序列【时间元组】

例子:

dt_tuple = dt1.timetuple()  # 就直接用timetuple()获取时间序列
dt1_tuple = datetime.datetime.timetuple(dt1)  # 这种方式也能获取时间序列
print('时间序列/元组是:', dt_tuple, '\n', dt1_tuple)

输出:

时间序列/元组是: time.struct_time(tm_year=2025, tm_mon=1, tm_mday=2, tm_hour=12, tm_min=25, tm_sec=29, tm_wday=3, tm_yday=2, tm_isdst=-1) 
 time.struct_time(tm_year=2025, tm_mon=1, tm_mday=2, tm_hour=12, tm_min=25, tm_sec=29, tm_wday=3, tm_yday=2, tm_isdst=-1)

还可以获取时间序列/元组里的值。如dt_tuple.tm_mon就会返回月份值1,dt_tuple.tm_wday返回3即周四。

tm_mon = dt_tuple.tm_mon
print('月份为:', tm_mon)

tm_wday = dt1_tuple.tm_wday
print('星期为:', int(tm_wday)+1)

tm_yday = dt1_tuple.tm_yday
print(f'%s 是一年中的第 %d 天' % (ft, tm_yday))

输出:
月份为: 1
星期为: 4
2025-01-02 12:25:29 是一年中的第 2 天

6. 1)strftime() 格式化时间--字符串的日期时间对象

strftime()是在date, datetime, time类下定义的。该方法根据给定的日期、日期时间和时间创建格式化的字符串。

print(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
print(datetime.date.today().strftime('%b %d %Y'))
print(datetime.time(18, 48, 32).strftime('%H:%M:%S'))

输出:

2025-01-02 14:10:21
Jan 02 2025
18:48:32

2) strptime()---将字符串类型转换为时间类型【即datetime类型】

date_str = '14 Nov, 2022'
date_obj = datetime.datetime.strptime(date_str, '%d %b, %Y')
print(date_obj)
print(type(date_obj))

输出:

2022-11-14 00:00:00
<class 'datetime.datetime'>

7. datetime和time之间的转换:只要借助时间元组【即时间序列】,即可实现这两者之间的转换。先让时间格式化为字符串,然后利用time.strptime(string_time,format)把字符串转换为时间元组,这时就是time模块的时间了,接着再利用time模块的其他函数,比如time.mktime(localtime)转换为时间戳等等。

now = datetime.datetime.now()
str_t = now.strftime('%Y-%m-%d %H:%M:%S')
print('字符串时间为:', str_t)

# 以字符串时间为中间形式,借助time.strptime()转为time模块的时间元组
o_dt = time.strptime(str_t, '%Y-%m-%d %H:%M:%S') 
print('字符串时间转为时间元组:', o_dt)

time_chuo = time.mktime(o_dt)  # 借助time.mktime()把时间元组转为时间戳
print('转为时间戳:', time_chuo)

输出:
格式化后的字符串: 2025-01-02 14:46:17
转为时间: time.struct_time(tm_year=2025, tm_mon=1, tm_mday=2, tm_hour=14, tm_min=46, tm_sec=17, tm_wday=3, tm_yday=2, tm_isdst=-1)
转为时间戳: 1735800377.0
now_tuple = now.timetuple()
now_chuo = time.mktime(now_tuple)

print('从时间序列转换为时间戳:', now_chuo)

输出:

从时间序列转换为时间戳: 1735800977.0

上图中,先利用timetuple()函数取得时间序列,然后借助time.mktime()函数转换为时间戳,也可以实现datetime和time之间的相互转换。

8. datetime.now()类:

# 获取当前的年、月份
print(datetime.datetime.now().date())

输出:
2025-01-02
# 获取每个时间的序列
print(datetime.datetime.now().timetuple())

# 获取月份
print(datetime.datetime.now().timetuple().tm_mon)

# 时间类型转为字符串类型
date_str = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
print(date_str)

# 在当前日期里加上2天,打印出来,注意模块的使用,优先级的混淆
print(datetime.datetime.now().date() + datetime.timedelta(days=2))

# 在现在的时间里面向后推迟2小时
print(datetime.datetime.now() + datetime.timedelta(hours=2))

输出:

time.struct_time(tm_year=2025, tm_mon=1, tm_mday=2, tm_hour=15, tm_min=42, tm_sec=59, tm_wday=3, tm_yday=2, tm_isdst=-1)
1
2025-01-02 15:42:59
2025-01-04
2025-01-02 17:42:59.058140

9. datetime.timedelta:timedelta对象表示两个日期或时间的时间差。

# 创建了两个timedelta对象t1和t2,打印相差的时间
t1 = datetime.timedelta(weeks=2, days=5, hours=1, seconds=33)
t2 = datetime.timedelta(days=4, hours=11, minutes=4, seconds=54)
t3 = t1 - t2
print(t3)
>> 14 days, 13:55:39
t1 = datetime.timedelta(seconds = 33)
t2 = datetime.timedelta(seconds = 54)
t3 = t1 - t2
print("t3 =", t3)
>> t3 = -1 day, 23:59:39
# 使用total_seconds()方法获得timedelta对象中的总秒数
t = datetime.timedelta(days=5, hours=1, seconds=33, microseconds=233423)
print("total seconds =", t.total_seconds())
>> total seconds = 435633.233423
# 求出上一个月的最后一天日期,就用这个月的第一天减1天,这个里面的参数可以改动,默认为月份初始化天
f=datetime.date(day=1, month=datetime.date.today().month, year=datetime.date.today().year) - datetime.timedelta(days=1)
print(f)
>> 2022-10-31

Python时间模块datetime、time、calendar的使用方法 @本文来源于公众号:csdn2299,喜欢可以关注公众号 程序员学府 本文简单总结了一下Python处理时间和日期方面的模块,主要就是datetime、time、calendar三个模块的使用,希望这篇文章对于学习Python的朋友们有所帮助。 文章目录1.获取到此时的准确时间2.获取当天的日期3.获取昨天的日期4.获取n天以前的日期5.字符串转换为时间和日期6.获取日历相关信 首先就是模块的调用... 阅读详情

相关推荐

使用Python 实时打印当前时间 datetime 和time 模块详解

通过这个示例,你学会了如何使用 Python 的datetime和time模块来实时打印当前的时间。这个简单的示例展示了如何使用这些模块来获取和显示当前时间,并通过暂停程序执行来实现每秒打印一次时间的效果。

m0_74972192的博客 5530

datetime常用方法

1.函数:datetime (1)用法:输入一个日期,来返回一个datetime类​ (2)格式:datetime.datetime(年,月,日,hour=,minute=,second=) 其中hour,minute,second可选 (3)附加类方法: today():返回本地当前时间 now():返回本地当前时间 utcnow():返回本地当前时间 fromtimestamp(时间戳):返回...

qq_43665151的博客 6187

Python中Datetime的使用

Python中datetime类的基本使用方法介绍。

The best way to predict the future is to invent it. 1041

datetime处理时间的函数

例如,以下是一个简单的示例,展示如何使用。

weixin_58440006的博客 1492

Python中获取当前时间的方法

可以使用calendar模块中的Calendar类和datetime模块中的datetime类来获取当前时间。datetime模块是Python内置的处理日期和时间的模块,它提供了datetime类来表示日期和时间。获取当前时间是在编程中常见的操作,Python提供了多种方法来获取当前时间。time模块也是Python内置的处理时间的模块,它提供了一些函数来获取时间相关的信息。根据实际需求,选择合适的方法来获取当前时间,在日常的编程中能够更好地处理时间相关的操作。方法一:使用datetime模块。

ByteHackerX的博客 1万+

Python如何使用datetime模块进行日期和时间的操作

本文介绍了Python的datetime模块的基本使用,包括创建datetime对象,格式化日期和时间,以及日期的运算。在实际编程中,这些操作都是非常常见的。通过datetime模块,我们可以方便地处理日期和时间,使编程更加高效。在下一次的文章中,我们将继续探讨datetime模块的高级使用,包括时区处理、日期和时间的复杂运算等内容。敬请期待。

这家伙很懒,什么都没有留下 941

datetime模块,在python中使用日期和时间

时间的划分 由于时间在全世界范围内的不同,会受到时区,政治因素和夏令时的影响。比如说,我认为现在是2021年的11月6日,但是,在世界的其他地方,今天可能是5日或者是7日,没有办法准确的确定现时此刻到底是什么时间。 因此,我们将时间划分为简单时间和准确时间。简单时间仅仅是一个时间,只针对你所在的地区有效,并不关心该时间在全世界中是什么时间。而准确时间必须要做更详细的记录,以此来确定,现在的时间,在全世界各个地方,到底是什么时间。 所以,不难看出,准确时间是非常有价值,但是它难以理解。而简单时间更容易被

瞎老弟python 2100

使用Python的datetime模块来计算时间差

我们还了解了timedelta类的属性和方法,以及如何使用它们来进行时间它们来进行时间差的计算和访问。例如,days属性表示时间差的天数,seconds属性表示时间差的秒数,microseconds属性表示时间差的微秒数,等等。在上面的示例中,我们从dt2中减去dt1,示例中,我们从dt2中减去dt1,得到一个timedelta对象diff,表示dt2和dt1之间的时间差。通过上述代码,我们可以计算出两个日期或时间之间的差异,并以不同的格式访问时间差的不同部分。这对于各种时间计算和处理场景非常有用。

UkyzJava的博客 492

Python 如何打印时间,time,datetime模块使用

Python 如何打印时间?time,datetime如何使用?

PittDing的博客 4949

使用Python的datetime模块创建时间数据的索引

通过datetime模块,我们可以方便地创建、操作和处理日期和时间数据,进行时间计算和比较,以及进行日期和时间的格式化和转换。这些功能对于处理时间序列数据和进行时间分析非常有用。首先,我们可以使用datetime模块的datetime类来创建一个特定日期和时间的对象。datetime模块的datetime类有一个now()方法,可以返回当前的日期和时间。它可以用于创建时间数据的索引,使我们能够方便地操作和处理日期和时间。一旦导入了datetime模块,我们就可以使用它提供的类和函数来创建和操作时间数据。

code88888的博客 418

基于GEC6818开发板的C/C++贪吃蛇小游戏

f.开始游戏(进入游戏,并没有马上开游戏,需要点击播放才能开始)2.相关宏,全局变量(可以根据自己需要进行修改)k.显示文字前的相关初始化。k.自定义font.h文件。1.需要的主要头文件。l.在开发板上显示字1。m.在开发板上显示字2。a.显示固定大小图片。h.线程1:获得坐标。

2301_77273301的博客 2132

python时间模块time、datetime的使用

文章目录python时间模块time、datetime的使用python中时间日期格式化符号Python本地时间与UTC时间转换Python时间戳转换特定格式 python时间模块time、datetime的使用 python中时间日期格式化符号 %y 两位数的年份表示(00-99) %Y 四位数的年份表示(000-9999) %m 月份(01-12) %d 月内中的一天(0-31)...

小胖_@的博客 619

【SABRE 3D, SABRE 3DxT,LAM设备】2025年9月14日-Clamshell 拆卸与安装

Clamshell 拆卸与安装。

weixin_46735260的博客 1690

python 当前时间的前一天_python中time、datetime模块的使用

python中time、datetime模块的使用1、前言如果您从事过python web的开发,那一定有过这样的经历,对于各种复杂繁琐的业务逻辑,掺杂着各种各样的时间约束,让人很容易搞的头晕眼花,比如展示出一天内用户进行过的所有操作记录,再比如进行验证码验证时获取当前时间与验证码生成时间进行比较,检查是否超过10分钟过期时间之类。这些关于时间的业务逻辑,要求我们必须能熟练掌握python中关于时...

weixin_35795357的博客 1834

RK3588嵌入式AI部署实战:从环境搭建到模型推理全链路

嵌入式AI部署涉及交叉编译、NPU驱动、模型量化与运行时环境等多个技术环节,其核心挑战在于软硬件版本矩阵的严格匹配。在边缘计算场景中,RK3588凭借6TOPS NPU算力成为热门平台,但环境搭建与模型转换的复杂性常导致部署效率低下。通过容器化工具链管理、量化参数对齐及多线程推理优化,可显著提升部署稳定性与推理性能。典型应用包括智能安防、工业质检与视频结构化分析。本文围绕RK3588的AI部署与环境搭建,系统梳理从系统烧录到板端推理的完整实践路径。

weixin_42520573的博客 282

ios生成海报使用dom-to-image中toPng报错isTrusted:true

主要是ios中safari浏览器解析错误,引起的报错,主要引起原因toPng会调用toSvg,toSvg直接将html标签内容通过svg中foreignObject标签直接包裹,然后转base64, 通过data:image/svg+xml;解决办法:二次生成(调用两次),判断ios or 安卓,生成第一次生成,不用参数,例如:scale: 3,在第二次生成再进行清晰度操作,避免多次生成,引起性能消耗。以上种种很多案例,使用canvase进行转换的,标签丢失,直接toPng版本的,兼容性问题。

weixin_44601570的博客 2105

python时间模块使用教程_Python datetime模块使用方法小结

datetime模块当前日期datetime.date.today()datetime.date(2020, 4, 24)转换元祖>>> datetime.date.timetuple(datetime.date.today())time.struct_time(tm_year=2020, tm_mon=4, tm_mday=24, tm_hour=0, tm_min=0, tm...

weixin_39904268的博客 349

电源工程师必看:平均电流模式BUCK双环控制详解(从传递函数到Psim仿真)

本文详细解析了平均电流模式BUCK变换器的双环控制策略,从传递函数推导到Psim仿真实现。针对电源工程师关注的环路设计和稳定性问题,深入比较了电压模式、峰值电流模式和平均电流模式的优缺点,并提供了12V/3A BUCK变换器的完整设计案例,帮助工程师掌握平均电流控制这一中高功率应用的首选方案。

weixin_42696271的博客 398

python 使用datetime模块timedelta实现日期时间相加

python使用datetime模块timedelta实现日期时间相加: python计算明天的日期: from datetime import datetime from datetime import timedelta now = datetime.now() aDay = timedelta(days=1) now = now + aDay print now.strftime(

zhuiqiuuuu的博客 1万+

从零开始VCS+Verdi 安装过程

从零开始VCS+Verdi 安装及破解过程 主要参考:VCS+Verdi 安装及破解过程(CentOS7)-----FPGA开发 1. 安装文件结构 –vcs-mx_vL-2016.06 –verdi_vL-2016.06-1 –scl_v11.9 #此程序统一管理license等破解文件 –SynopsysInstaller.rar #此程序用于安装以上3个程序 –sc...

Ztrans的博客 2万+

VMD分子可视化实战:5个隐藏技巧让你的科研图像秒变顶刊级别

本文深入探讨了VMD分子可视化软件在科研图像美化中的5个高阶技巧,旨在帮助研究者将分子结构图提升至顶刊级别。内容涵盖原子色彩与材质的艺术化定制、沉浸式分子环境构建、专业构图与视角控制、数据驱动的动态可视化以及自动化工作流建立,通过精细的色彩映射、光照调整、周期性边界展示和脚本自动化,显著增强图像的科学叙事性与视觉冲击力。

weixin_29240343的博客 421

python中datetime模块的介绍及使用--用于处理日期时间,计算时间间隔等

datetime在python中比较常用,主要用来处理时间日期等,是一个非常有用的模块,在应对关于时间日期计算的编程题和工作实际运用时,可以直接应用,使用下面所述类时要先import datetime。

weixin_45440484的博客 4818

Android 13.0仿ios的hotseat效果修改hotseat样式

在13.0系统产品rom定制化开发中,在项目需求的需要,系统原生Launcher的布局样式很一般,所以需要重新设计ui对布局样式做调整,产品在看到 ios的hotseat效果觉得特别美观,所以要仿ios一样不需要横屏铺满的效果 居中显示就行了,所以就要看hotseat的具体布局显示了

安卓兼职framework和app工程师的博客 1144

python中datetime的用法_[ Python入门教程 ] Python中日期时间datetime模块使用实例

Python中datetime模块提供强大易用的日期处理功能,用于记录程序操作或修改时间、时间计算、日志时间显示等功能。datatime模块重新封装了time模块,提供的类包括date、time、datetime、timedelta、tzinfo。本文提供datetime模块最常用的使用实例,解决编码中使用datetime模块的大部分需求。datetime模块更详尽用法可以查看帮助手册。datet...

weixin_39640417的博客 555

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

python——使用当前datetime模块获取当前时间

使用datetime模块获取当前年、月、日、时、分、秒 主要函数为datetime.datetime.now()获取当前时间 使用datetime.datetime.now().strftime(…)获取具体年月日时分秒 描述strftime(…)函数部分参数: %Y: 年(四位数的年份表示) %m: 月份 %d: 月内中的一天 %H:24小时制小时数 %M:分钟数 %S: 秒 上述参数可以组合使用,也可以单独使用,只获取一个对应属性 【sample】 In [1]: import datetime In

gy笨瓜的博客 1万+

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

python中使用日期和时间差:datetime模块

python中使用日期和时间差:datetime模块

weixin_46676149的博客 523

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

上一篇: python中os和sys模块的使用
下一篇: python中序列化之json文件的使用
幸运的星竹
博客等级 码龄11年 190粉丝 68原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值