当前位置: 代码网 > it编程>前端脚本>Python > Python标准库datetime模块日期和时间数据类型解读

Python标准库datetime模块日期和时间数据类型解读

2025年08月03日 Python 我要评论
datetime常用类date : 以公历形式存储日历日日期(年、月、日)time : 将时间存储为 时、分、秒datetime : 存储日期和时间日期date类型使用# 导入datetime模块im

datetime常用类

  • date : 以公历形式存储日历日日期(年、月、日)
  • time : 将时间存储为 时、分、秒
  • datetime : 存储日期和时间

日期date类型使用

# 导入datetime模块
import datetime
# 创建日期
date = datetime.date(2021, 3, 5)
print(date)
# 获取年
print(date.year)
# 获取月
print(date.month)
# 获取日
print(date.day)

时间 time 类型使用

# 创建时间
import datetime
time = datetime.time(13, 14, 20)
print(time)
# 获取小时
print(time.hour)
# 获取分钟
print(time.minute)
# 获取秒
print(time.second)

日期和时间的结合体–日期时间(datetime)

import datetime
# 创建日期时间
datetime = datetime.datetime(2019, 9, 9, 13, 14, 20)
print(datetime)
# 获取年
print(datetime.year)
# 获取月
print(datetime.month)
# 获取日
print(datetime.day)
# 获取小时
print(datetime.hour)
# 获取分钟
print(datetime.minute)
# 获取秒
print(datetime.second)

datetime的time方法可以创建时间,date方法可以创建日期,datetime方法则是日期和时间的结合体

通过year、month、day、hour、minute、second属性,可以获取到相应的日期或者时间的值

使用 datetime.new() 方法可以获取当前时间

import datetime
# 获取当前时间
print(datetime.datetime.now())
2021-03-02 11:18:28.025878

process finished with exit code 0

时间格式

时间格式转换字符串

直接使用str进行强制转换即可

import datetime
date_time = datetime.datetime(2021, 3, 5, 13, 14, 20)
print(type(date_time))
print(date_time)
str_date_time = str(date_time)
print(str_date_time)
print(type(str_date_time))
<class 'datetime.datetime'>
2021-03-05 13:14:20
2021-03-05 13:14:20
<class 'str'>

process finished with exit code 0

格式转换 strftime()

strftime()方法的作用是将时间格式转化为自定义字符串格式,格式可以完全自定义

import datetime
date_time = datetime.datetime(2021, 3, 5, 13, 14, 20)
str_time = date_time.strftime('%m/%d/%y %h:%m')

print(str_time)
03/05/2021 13:14

process finished with exit code 0

格式转换 strptime()

strptime()方法的作用是字符串时间转化为datetime格式

  • 需要注意的是按一定的格式输出时间

例:

import datetime
strp = datetime.datetime.strptime('aug-23-21 20:13', '%b-%d-%y %h:%m')
print(strp)
2021-08-23 20:13:00

时间日期格式转换为时间戳(秒)

  • 利用时间戳进行时间加减
import time
now = datetime.datetime.now()
time_stamp = time.mktime(now.timetuple()) 
print(time_stamp)

>>> 1640851597.0

时间戳转换为字符串

import time

date_num = 1640851597.0
date_str = time.strftime('%y-%m-%d %h:%m:%s', time.localtime(date_num)) 

print(date_num)

>>> 2021-12-30 16:06:37

时间戳转换为datetime

  • 这个方法获取的时间好像不是北京时间
import time
import datetime

date_num = 1640851597.0
datearray = datetime.datetime.utcfromtimestamp(date_num)

print(datearray)
print(type(datearray))

>>> 2021-12-30 08:06:37
>>> <class 'datetime.datetime'>

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com