- 博客主页:长风清留扬-CSDN博客
- 系列专栏:Python基础专栏
- 每天更新大数据相关方面的技术,分享自己的实战工作经验和学习总结,尽量帮助大家解决更多问题和学习更多新知识,欢迎评论区分享自己的看法
- 感谢大家点赞👍收藏⭐评论
datetime
Python的datetime模块提供了一个简单而强大的方式来处理日期和时间。这个模块定义了一系列类,用于表示日期(date)、时间(time)、时间差(timedelta)、以及日期和时间(datetime)。此外,它还包含了一些函数和常量,用于处理时区信息和时间格式转换。
推荐阅读:万字长文带你从底层到实战了解Python中的time模块,从基础到进阶让你轻松掌握时间管理
datetime类
datetime类是最常用的类之一,它结合了日期和时间。你可以通过传递年、月、日、时、分、秒和微秒(可选)来创建一个datetime对象。
from datetime import datetime
# 创建一个datetime对象
now = datetime(2023, 4, 1, 12, 0, 0)
print(now) # 输出: 2023-04-01 12:00:00
date类
date类用于表示日期(年、月、日)。你可以通过datetime.date()或直接从date类创建date对象。
from datetime import date
# 创建一个date对象
today = date(2023, 4, 1)
print(today) # 输出: 2023-04-01
time类
time类用于表示时间(时、分、秒、微秒)。它通常与date或datetime对象一起使用,但也可以单独使用。
from datetime import time
# 创建一个time对象
noon = time(12, 0, 0)
print(noon) # 输出: 12:00:00
timedelta类
timedelta类用于表示两个日期或时间之间的差异。你可以通过传递天数、秒数和微秒数(可选)来创建一个timedelta对象。
from datetime import timedelta
# 创建一个timedelta对象
one_day = timedelta(days=1)
print(one_day) # 输出: 1 day, 0:00:00
时间戳
datetime模块还允许你将datetime对象转换为时间戳(自1970年1月1日以来的秒数)以及将时间戳转换回datetime对象。
from datetime import datetime
# 获取当前时间的时间戳
timestamp = datetime.now().timestamp()
print(timestamp) # 输出一个浮点数,表示当前时间的时间戳
# 将时间戳转换回datetime对象
dt_object = datetime.fromtimestamp(timestamp)
print(dt_object) # 输出与当前时间相同的datetime对象
字符串与时间对象的转换
datetime模块提供了strptime和strftime方法,用于将字符串转换为时间对象以及将时间对象转换为字符串。strftime方法接受一个格式字符串,并根据该字符串的指令返回一个新的字符串。strptime方法则相反,它将一个字符串解析为一个datetime对象。
from datetime import datetime
# 字符串转换为datetime对象
dt_string = "2023-04-01 12:00:00"
dt_object = datetime.strptime(dt_string, "%Y-%m-%d %H:%M:%S")
print(dt_object) # 输出: 2023-04-01 12:00:00
# datetime对象转换为字符串
formatted_string = dt_object.strftime("%d/%m/%Y %H:%M:%S")
print(formatted_string) # 输出: 01/04/2023 12:00:00
时区支持
虽然datetime模块本身不直接支持时区,但Python 3.2及更高版本引入了pytz库(需要单独安装),它可以与datetime模块一起使用来处理时区信息。
import pytz
from datetime import datetime
# 设置时区
tz = pytz.timezone('Asia/Shanghai')
# 创建一个带时区的datetime对象
aware_dt = tz.localize(datetime(2023, 4, 1, 12, 0, 0))
print(aware_dt) # 输出: 2023-04-01 12:00:00+08:00
推荐阅读
Python基础
Python全网最全基础课程笔记(一)——基础入门
Python全网最全基础课程笔记(二)——变量
Python全网最全基础课程笔记(三)——所有运算符+运算符优先级
Python全网最全基础课程笔记(四)——基本数据类型
Python全网最全基础课程笔记(五)——选择结构+Python新特性Match
Python全网最全基础课程笔记(六)——循环结构
Python全网最全基础课程笔记(七)——列表,跟着思维导图和图文来学习,爆肝2w字,无数代码案例!
Python全网最全基础课程笔记(八)——字典,跟着思维导图和图文来学习,爆肝2w字,无数代码案例!
Python全网最全基础课程笔记(九)——集合,跟着思维导图和图文来学习,爆肝2w字,无数代码案例!
Python全网最全基础课程笔记(十)——元组,跟着思维导图和图文来学习,爆肝2w字,无数代码案例!
Python全网最全基础课程笔记(十一)——字符串所有操作,跟着思维导图和图文来学习,爆肝2w字,无数代码案例!
Python全网最全基础课程笔记(十二)——函数,跟着思维导图和图文来学习,爆肝2w字,无数代码案例!
Python全网最全基础课程笔记(十三)——作用域,跟着思维导图和图文来学习,爆肝2w字,无数代码案例!
Flink入门到就业
2024年最新Flink教程,从基础到就业,大家一起学习–基础篇
2024年最新Flink教程,从基础到就业,大家一起学习–入门篇
2024年最新Flink教程,从基础到就业,大家一起学习–Flink集群部署
2024年最新Flink教程,从基础到就业,大家一起学习–flink部署和集群部署(从本地测试到公司生产环境如何部署项目源码)
2024年最新Flink教程,从基础到就业,大家一起学习–Flink运行架构底层源码详解+实战
2024年最新Flink教程,从基础到就业,大家一起学习–Flink DataStream API-第一篇+源码讲解