新闻中心

python3时间中datetime有哪些转换方式?

2025-12-01
浏览次数:
返回列表
Python3中datetime模块支持字符串与datetime互转(strptime/strftime)、时间戳转换(fromtimestamp/timestamp)、struct_time交互及时区处理(ZoneInfo),需注意格式符匹配与时区设置,掌握这些方法可满足多数时间操作需求。

python3时间中datetime有哪些转换方式?

Python3 中 datetime 模块提供了多种时间表示和转换方式,常用于处理日期、时间以及它们之间的格式化与运算。以下是常用的转换方法,覆盖常见使用场景。

1. 字符串转 datetime 对象(strptime)

使用 strptime() 方法将格式化的字符串解析为 datetime 对象。

示例:
from datetime import datetime
<p>date_str = "2025-05-20 14:30:00"
dt = datetime.strptime(date_str, "%Y-%m-%d %H:%M:%S")
print(dt)  # 输出: 2025-05-20 14:30:00

注意格式符要与字符串匹配,常用格式符:

  • %Y:四位年份
  • %m:两位月份
  • %d:两位日期
  • %H:%M;%S:时分秒

2. datetime 转字符串(strftime)

使用 strftime() 将 datetime 对象格式化为可读字符串。

示例:
now = datetime.now()
formatted = now.strftime("%Y年%m月%d日 %H:%M")
print(formatted)  # 如:2025年05月20日 14:35

3. 时间戳转 datetime

使用 datetime.fromtimestamp() 将 Unix 时间戳(秒数)转为本地 datetime 对象。

示例:
timestamp = 1716213000
dt_from_ts = datetime.fromtimestamp(timestamp)
print(dt_from_ts)  # 转为本地时间

若需 UTC 时间,使用 datetime.utcfromtimestamp()(注意:Python 3.12+ 推荐使用 utcfromtimestamp 替代 utcnow)。

4. datetime 转时间戳

使用 timestamp() 方法获取 datetime 对象对应的时间戳。

Voicepods Voicepods

Voicepods是一个在线文本转语音平台,允许用户在30秒内将任何书面文本转换为音频文件。

Voicepods 142 查看详情 Voicepods 示例:
now = datetime.now()
ts = now.timestamp()
print(ts)  # 如:1716213050.123

注意:对象需为 aware 类型(带时区)才能准确转换,否则按本地时区处理。

5. datetime 与 struct_time 转换

通过 time 模块的 mktimelocaltime 可实现与 struct_time 的互转。

示例:
import time
<h1>datetime 转 struct_time</h1><p>dt = datetime.now()
struct = dt.timetuple()
print(struct)</p><h1>struct_time 转 timestamp 再转 datetime</h1><p>ts = time.mktime(struct)
dt_back = datetime.fromtimestamp(ts)

6. 处理时区(aware datetime)

使用 zoneinfo(Python 3.9+)或 pytz 库处理时区转换。

示例(使用 zoneinfo):
from zoneinfo import ZoneInfo
<h1>创建带时区的时间</h1><p>beijing_time = datetime.now(ZoneInfo("Asia/Shanghai"))
ny_time = beijing_time.astimezone(ZoneInfo("America/New_York"))</p><p>print(beijing_time)
print(ny_time)

这有助于跨时区时间统一和转换。

基本上就这些。掌握 strptime、strftime、timestamp 相关方法,再配合时区处理,就能应对大多数时间转换需求。不复杂但容易忽略细节,比如格式符大小写、时区是否明确。建议实际中多打印中间结果验证。

以上就是python3时间中datetime有哪些转换方式?的详细内容,更多请关注其它相关文章!


# ai  # unix  # 字符串解析  # 两位  # 数据处理  # 有哪些  # 如何使用  # 如何处理  # python  # 宿迁网站建设来啦  # 微博营销推广哪家好点做  # seo大神教程  # 汕头seo推广外包  # 渭南霸屏整合营销推广  # 盐亭张氏民居网站建设  # 票务营销与推广  # 北滘家居网站建设  # 推广话题营销  # 美食平台营销推广文案  # 推荐使用  # 就能  # 序列化  # 是一个  # 多线程 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: QQ邮箱在线登录平台 QQ邮箱个人邮箱网页版入口  在J*a中如何使用Exception包装底层异常_异常包装与信息传递方法说明  荣耀Play7T运行卡顿解决_荣耀Play7T性能优化  mysql备份恢复性能优化_mysql备份恢复性能优化方法  天眼查企业查询官网入口 天眼查官方网页版查询  汽车之家官方网站官网入口_汽车之家网页版直接进入  PDO预处理语句中冒号的正确处理:区分SQL函数格式与命名占位符  mc.js免安装版 mc.js一键畅玩入口  uc手机浏览器网页版入口 uc浏览器手机版便捷登录首页  苹果手机指南针不准怎么校准 传感器校准方法详解【建议收藏】  小米汽车11月交付量突破40000台!雷军:将继续努力  微信商城在哪里打开【步骤】  win11如何卸载Windows更新补丁 Win11解决更新导致系统不稳定的问题【修复】  MAC如何安全彻底地删除文件_MAC使用终端命令确保文件无法被恢复  sublime如何配置Go语言开发环境_sublime搭建Golang编译运行系统  Python大型XML文件高效流式解析教程  支付宝碰一碰设备是REDMI手机吗 博主拆机辟谣:处理器、内存都不一样  铃兰之剑为这和平的世界希里技能组及加点推荐  利用Bokeh CustomJS动态控制DataTable列可见性  c++如何使用Meson构建系统_c++比CMake更快的构建工具  深入理解J*aScript Promise异步执行与微任务队列  Yandex官网搜索引擎免登录_俄罗斯Yandex一键直达入口  支付宝如何管理隐私设置_支付宝隐私保护的配置技巧  魅族17怎样用浏览器译外语网页_iPhone魅族17浏览器译外语网页【即时翻译】  新三国志曹操传110级星符试炼夏侯渊极难攻略  AO3官方在线访问地址 Archive of Our Own最新镜像合集  大象笔记网页版入口 印象笔记网页版登录入口  Go语言中的*string:深入理解字符串指针  React Router v6 教程:构建认证保护的私有路由与重定向策略  Golang如何通过reflect获取匿名字段方法_Golang reflect匿名字段方法访问技巧  响应式CSS Grid布局:优化网格项在小屏幕下的堆叠与宽度适配  地铁跑酷免费秒玩入口链接 地铁跑酷小游戏免费秒玩网站  Win11输入法不见了怎么办_Windows11恢复语言栏显示方法  优化MinIO list_objects_v2 操作的性能瓶颈与最佳实践  b站怎么删除评论_b站评论管理与删除操作  c++如何实现一个简单的ECS框架_c++数据驱动设计与游戏开发  win11开机启动修复循环怎么办 Win11无法进入系统高级启动解决方法【修复】  神经网络二分类模型训练异常:高损失与完美验证准确率的排查与修正  修复二维数组索引越界异常:一维循环到二维坐标的正确映射  fishbowl官网免费版 fishbowl养鱼网站入口  Win10桌面图标出现小盾牌怎么办 Win10去除UAC图标教程【解决】  b站如何看历史记录_b站观看历史找回方法  python3时间如何用calendar输出?  漫蛙2正版漫画站 漫蛙2网页版快速访问入口  VS Code远程开发时如何处理文件权限问题  如何使用Go和Martini动态服务解码后的图片  Windows 11怎么彻底关闭定位_Windows 11服务中禁用Geolocation  解决Rails应用中内容错位与Turbo警告:meta标签误用导致富文本渲染异常  如何使 Jest 模拟函数默认抛出错误以提高测试效率  Mac终端命令大全_Mac常用Terminal指令速查 

搜索