Python中用datetime模块获取星期几的核心是.weekday()和.strftime():前者返回0–6(周一为0),后者用%A/%a格式化英文名,中文需列表映射;字符串日期需先用strptime()解析。

Python里用 datetime 模块就能轻松根据日期得到星期几,核心是 .weekday() 和 .strftime() 这两个方法。
用 weekday() 获取数字表示的星期
weekday() 返回 0–6 的整数,其中 Monday=0,Sunday=6:
- 周一 → 0
- 周二 → 1
- ……
- 周日 → 6
示例:
from datetime import date d = date(2024, 6, 12) # 2024年6月12日 print(d.weekday()) # 输出:2 → 周三
登录后复制
用 strftime() 获取中文或英文星期名
更直观的方式是用格式化字符串:
立即学习“”;
-
%A→ 完整英文名(如Wednesday) -
%a→ 缩写英文名(如Wed) -
%w→ 数字(0是周日,1–6是周一到周六)注意:和weekday()起始不同! - 中文需手动映射,比如:
['周一','周二','周三','周四','周五','周六','周日'][d.weekday()]
示例(中文输出):
使用Canva可画,轻松创建专业设计
2388 from datetime import date d = date(2024, 6, 12) weekdays = ['周一', '周二', '周三', '周四', '周五', '周六', '周日'] print(weekdays[d.weekday()]) # 输出:周三
登录后复制
处理字符串日期(如 “2024-06-12″)
如果输入是字符串,先用 strptime() 解析成 date 或 datetime 对象:
from datetime import datetime s = "2024-06-12" d = datetime.strptime(s, "%Y-%m-%d").date() print(['周一','周二','周三','周四','周五','周六','周日'][d.weekday()])
登录后复制
常见格式符号:%Y 四位年,%m 月,%d 日,%H:%M:%S 时分秒。
注意时区与(进阶提示)
默认按系统本地时区计算。若涉及跨时区或需要本地化名称(如中文星期),推荐用 locale 模块设置区域,或直接用列表映射更稳妥。pandas 的 dt.day_name() 在处理时间序列时也很好用,但纯 Python 场景无需额外依赖。
基本上就这些,不复杂但容易忽略 weekday() 和 %w 的起始差异。
以上就是Python怎样根据日期判断周几的详细内容,更多请关注php中文网其它相关文章!
相关标签:
微信扫一扫打赏
支付宝扫一扫打赏
