掘金 人工智能 09月14日
Python日期时间与日历处理指南
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文介绍了Python中处理日期、时间和日历的实用技巧。通过`datetime`模块,可以轻松获取当前时间、创建自定义日期时间、进行日期运算(如加减天数)、以及灵活格式化和解析日期字符串。`strftime()`用于将日期时间对象格式化为易读的字符串,而`strptime()`则能将字符串解析为日期时间对象。此外,`calendar`模块提供了生成月度或年度日历、判断闰年等功能,是构建日历相关应用的强大工具。文章还包含代码示例和性能计时方法,帮助读者深入理解和应用这些功能。

💡 **核心模块概览**:Python提供了`datetime`和`calendar`两个核心模块来处理日期、时间和日历。`datetime`模块是处理日期和时间对象(如当前时间、自定义时间、时间差)的基础,而`calendar`模块则专注于日历的生成和相关查询(如月历、年历、闰年判断)。

🕰️ **日期时间操作**:`datetime.now()`用于获取当前的日期和时间,可以进一步提取日期部分(`now.date()`)或时间部分(`now.time()`)。用户还可以使用`date()`和`time()`函数创建特定的日期和时间对象。`timedelta`对象则支持对日期进行加减运算,方便计算未来的或过去的日期。

📝 **格式化与解析**:`strftime()`方法允许将日期时间对象按照指定的格式代码(如`%Y`代表四位年份,`%m`代表月份,`%d`代表日期)转换为字符串。反之,`strptime()`方法则可以将符合特定格式的日期字符串解析成`datetime`对象,这在处理外部数据时尤为重要。

🗓️ **日历功能**:`calendar`模块提供了如`calendar.month()`用于打印指定月份的日历,`calendar.calendar()`用于生成整年的日历,以及`calendar.isleap()`用于判断某一年是否为闰年等实用功能,极大地简化了日历信息的获取与展示。

前言

大家好,我是倔强青铜三。欢迎关注我,微信公众号:倔强青铜三。欢迎点赞、收藏、关注,一键三连!!!

日期与时间无处不在:排程任务、记录日志、为数据打时间戳、甚至构建日历。

Python 用两个强大的模块: datetimecalendar ,让这一切变得轻而易举。今天,你将像行家一样玩转日期、时间与日历。⏰


📦 导入模块

import datetimeimport calendar

🕰️ 1. 获取当前日期与时间

from datetime import datetimenow = datetime.now()print("当前日期与时间:", now)print("日期:", now.date())print("时间:", now.time())

📌 输出示例

当前日期与时间: 2025-08-01 14:30:22.123456日期: 2025-08-01时间: 14:30:22.123456

📆 2. 创建自定义日期与时间

from datetime import date, time# 创建日期my_date = date(2025, 12, 25)print("自定义日期:", my_date)# 创建时间my_time = time(14, 30, 0)print("自定义时间:", my_time)

⏳ 3. 日期运算(timedelta)

利用 timedelta 进行加减:

from datetime import timedeltatoday = date.today()future = today + timedelta(days=10)past = today - timedelta(days=30)print("今天:", today)print("10天后:", future)print("30天前:", past)

🗓️ 4. 格式化与解析日期

✅ 用 strftime() 格式化

print(now.strftime("%Y-%m-%d %H:%M:%S"))print(now.strftime("%A, %B %d, %Y"))  # Friday, August 01, 2025

✅ 用 strptime() 解析字符串

date_str = "2025-12-31"parsed_date = datetime.strptime(date_str, "%Y-%m-%d")print(parsed_date)

📜 5. 玩转 calendar 模块

calendar 是生成与探索日历数据的利器。

✅ 打印月度日历

import calendarprint(calendar.month(2025, 8))

✅ 检查闰年

print(calendar.isleap(2024))  # Trueprint(calendar.isleap(2025))  # False

✅ 获取全年日历

print(calendar.calendar(2025))

⏱️ 6. 计时(性能测试)

datetime 测量执行耗时:

start = datetime.now()# 模拟任务for _ in range(1000000):    passend = datetime.now()print("执行耗时:", end - start)

🧠 strftime 速查表

代码含义示例
%Y年(4位)2025
%m月(01-12)08
%d日(01-31)01
%H时(00-23)14
%M分(00-59)30
%S秒(00-59)22
%A星期(全称)Friday
%B月份(全称)August

🎯 实战挑战

    将当前日期时间打印为:Friday, 01 August 2025 - 02:30 PM让用户输入生日,计算其存活天数。显示本月日历。

🧾 小结

最后感谢阅读!欢迎关注我,微信公众号倔强青铜三。欢迎 点赞收藏关注,一键三连!

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

Python datetime calendar 日期 时间 日历 编程 教程
相关文章