python中的datatime包

目录

  • datetime包的常用功能
  • datetime包中的常用方法
  • python的常用时间格式化符号

认识datetime

  • 日期与时间的结合体-date and time
  • 获取当前时间
  • 获取时间间隔
  • 将时间对象转成时间字符串
  • 将字符串转成时间类型

获取当前时间

  • 导入包与模块:

    • from datetime import datetime
    • import datetime
  • 使用方法:

    • datetime.now()
    • datetime.datetime.now() (today)
  • 例子:返回当前年月日时分秒毫秒的datetime对象

In [1]: import datetime

In [2]: datetime.datetime.now()
Out[2]: datetime.datetime(2023, 5, 27, 21, 26, 31, 333349)
  • 这个datetime并不在我们当前的目录下,我们又如何找到它的呢。实际上这是Python的一个内置的包。它会被Python安装在指定的一个目录下。包括未来我们安装下载的一些第三方包,也会被Python安装在指定的目录下。这些目录在我们平时使用脚本的时候,可直接通过from或者import就可以获取到。

获取时间间隔

  • 导入包
    • from datetime import datetime
    • from datetime import timedelta
  • 使用方法:
    • timeobj = timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, week=0)
  • 例子:返回时间间隔的datetime对象
In [21]: In [3]: from datetime import datetime
    ...:
    ...: In [4]: from datetime import timedelta
    ...:
    ...: In [6]: before_one_day = timedelta(days=1)
    ...:
    ...: In [7]: yestaday = datetime.now() - before_one_day
    ...:
    ...: In [8]: yestaday
Out[21]: datetime.datetime(2023, 5, 28, 11, 33, 49, 535466)

时间对象转字符串

  • 时间对象之间可以做加法与减法的操作。但是时间对象有一个问题。它无法进行数据之间的传输。比如我们有一个a服务公司,想给B服务公司传一个时间。但是时间对象是无法传输的。必须把时间对象转成字符串才可以使用。比如2020-03-02.这样一个字符串传入之后别人才可以看得懂。
  • 获取时间对象∶
    • from datetime import datetime
    • now = datetime.now()
  • 时间转字符串:
    • date str = now.strftime(format)
  • 例子:符合时间格式的字符串(能被时间格式匹配的字符串对象)
In [20]: In [10]: from datetime import datetime
    ...:
    ...: In [11]: date = datetime.now()
    ...:
    ...: In [12]: str_date = date.strftime('%Y-%m-%d %H:%M:%S')
    ...:
    ...: In [13]: str_date
Out[20]: '2023-05-28 11:32:42'

时间字符串转时间类型

  • 获取时间模块:
    • from datetime import datetime
  • 时间字符串转时间类型:
    • datetime.strptime(tt, format)
    • 在使用striptime的时候,我们的格式符标准一定要和我们左边的字符串保持一致
    • 在把字符串转化成时间对象的时候,如果要格式化为时间对象的时间字符串中没有哪些单位的数据,则格式化后的时间对象中将显示为00
  • 参数介绍·
    • tt : 符合时间格式的字符串
    • format : tt时间字符串匹配规则

注意:format和字符串中的格式要一致

In [19]: In [14]: from datetime import datetime
    ...:
    ...: In [15]: str_date = '2023-5-28 20:24:34'
    ...:
    ...: In [16]: date_obj = datetime.strptime(str_date, '%Y-%m-%d %H:%M:%S')
    ...:
    ...: In [17]: date_obj
Out[19]: datetime.datetime(2023, 5, 28, 20, 24, 34)

时间格式符

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

实战

# coding:utf-8  
# Time: 2023/5/28  
# @Author: Dx  
# @File:package_datetime.py  
  
from datetime import datetime  
from datetime import timedelta  
  
now = datetime.now()  
print(now, type(now))  
now_str = now.strftime('%Y-%m-%d %H:%M:%S')  
print(now_str, type(now_str))  
now_obj = datetime.strptime(now_str, '%Y-%m-%d %H:%M:%S')  
print(now_obj, type(now_obj))  
  
print('===========================================')  
  
three_days = timedelta(days=3) # 这个时间间隔是三天,可以代表三天前或三天后的范围  
after_three_days = three_days + now  
print(after_three_days)  
after_three_days_str = after_three_days.strftime('%Y/%m/%d %H:%M:%S:%f')  
print(after_three_days_str, type(after_three_days_str))  
after_three_days_obj = datetime.strptime(after_three_days_str, '%Y/%m/%d %H:%M:%S:%f')  
print(after_three_days_obj, type(after_three_days_obj))  
  
print('===========================================')  
  
before_three_days = now - three_days  
print(before_three_days)  
before_three_days_str = before_three_days.strftime('%Y/%m/%d %H:%M:%S:%f')  
print(before_three_days_str, type(before_three_days_str), '=================')  
before_three_days_obj = datetime.strptime(before_three_days_str, '%Y/%m/%d %H:%M:%S:%f')  
print(before_three_days_obj, type(before_three_days_obj))  
  
print('===========================================')  
  
one_hour = timedelta(hours=1)  
after_one_hour = now + one_hour  
after_one_hour_str = after_one_hour.strftime('%H:%M:%S')  
print(after_one_hour_str)  
after_one_hour_obj = datetime.strptime(after_one_hour_str, '%H:%M:%S')  
print(after_one_hour_obj, type(after_one_hour_obj))  
  
# default_str = '2023 5 28 abc'  
# default_obj = datetime.strptime(default_str, '%Y %m %d')
2023-05-28 20:55:59.620995 <class 'datetime.datetime'>
2023-05-28 20:55:59 <class 'str'>
2023-05-28 20:55:59 <class 'datetime.datetime'>
===========================================
2023-05-31 20:55:59.620995
2023/05/31 20:55:59:620995 <class 'str'>
2023-05-31 20:55:59.620995 <class 'datetime.datetime'>
===========================================
2023-05-25 20:55:59.620995
2023/05/25 20:55:59:620995 <class 'str'> =================
2023-05-25 20:55:59.620995 <class 'datetime.datetime'>
===========================================
21:55:59
1900-01-01 21:55:59 <class 'datetime.datetime'>

进程已结束,退出代码0
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: datetimePython的一个函数库,用于处理日期和时间。它提供了一些类和函数,可以方便地进行日期和时间的计算、格式化、解析等操作。datetime含了date、time、datetimetimedelta等类,可以满足不同的需求。在Python,使用datetime函数库可以轻松地处理日期和时间,是Python常用的函数库之一。 ### 回答2: Pythondatatime函数库是Python编程语言用于处理日期和时间的标准函数库,提供了从简单的日期和时间操作到复杂的日历计算功能的支持。使用这个函数库可以轻松地解决日期和时间的转换、计算和格式化问题。 datatime函数库括了以下几个重要类: 1. datetime类:表示一个日期和时间的组合,括年、月、日、时、分、秒和微秒。可以通过日期或时间戳来创建一个datetime对象,支持时间差、时间调整、加减、比较等常用操作。 2. date类:表示一个日期。它只保留年、月、日的信息,没有具体的时间。可以通过年月日来创建一个date对象,支持时间差、时间调整、加减、比较等常用操作。 3. time类:表示一个时间。它只保留时、分、秒和微秒的信息,没有具体的日期。可以通过小时、分钟、秒和微秒来创建一个time对象,支持时间差、时间调整、加减、比较等常用操作。 4. timedelta类:表示两个日期或时间之间的差值,可以用于计算时间间隔、时间调整、加减等常用操作。 5. tzinfo类:用于处理时区信息,可以自定义时区或使用系统默认时区。 除了这些类外,datatime函数库还提供了很多常用的函数和模块,如strftime()函数用于给日期和时间格式化输出、parser模块用于解析日期和时间字符串、calendar模块用于日历计算等等。 总之,datatime函数库为Python程序开发提供了强大的日期和时间处理功能,使得处理日期和时间的操作变得更加简便和高效。无论你是处理日期和时间问题的初学者,还是高级程序员,都可以从受益匪浅。 ### 回答3: Python的datetime函数库为日期和时间处理提供了强有力的支持,括日期、时间、时间戳之间的转换和比较,以及时区的处理等。datetime函数库提供了4个主要的类:date、time、datetimetimedelta。 date类用于处理日期,括年、月、日等信息。time类则处理时间,括时、分、秒等信息。datetime含日期和时间信息,timedelta则用来表示时间差,可以对时间进行加减操作。在使用时,可以通过导入datetime函数库,来对具体的日期和时间进行操作,进行格式转换、计算时间差和数据处理等操作。 datetime模块常用的函数有strftime(),strptime(),today(),utcnow(),replace(),参数格式说明如下: 1. strftime(): 将时间转为字符串格式,参数为指定输出格式的字符串。 2. strptime(): 将字符串转为时间格式,参数为输入字符串和指定的输入格式的字符串。 3. today(): 获取当天的日期。 4. utcnow(): 获取当前的UTC时间。 5. replace(): 替换时间的年、月、日、时、分、秒等信息。 除此之外,datetime模块还可以进行时间的比较、计算时间差、时区的转换和格式化输出等功能。使用datetime函数库,可以方便地进行日期和时间处理,满足不同的数据处理需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DevGeek

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值