Python时间与字符串互转方法及格式化详解
本文详细解析Python中时间对象与字符串之间的相互转换方法。通过实例演示如何利用str()和strftime()将datetime对象格式化为指定字符串,以及使用datetime.strptime()将字符串解析为日期对象。内容涵盖常用格式化符号说明及在线工具推荐,帮助开发者高效处理时间数据。
Python时间与字符串转换基础示例
本文通过具体实例介绍Python中时间对象与字符串相互转换的操作方法,旨在为读者提供实用的参考代码与说明。
以下是一个基础的时间格式化示例:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import time
# 格式化成2016-03-20 11:45:39形式
print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
# 格式化成Sat Mar 28 22:24:24 2016形式
print time.strftime("%a %b %d %H:%M:%S %Y", time.localtime())
# 将格式字符串转换为时间戳
a = "Sat Mar 28 22:24:24 2016"
print time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y"))
运行上述代码后的输出结果如下:
2016-04-07 10:25:09 Thu Apr 07 10:25:09 2016 1459175064.0
在格式化过程中,会用到以下特定的格式符号:
| %y | 两位数的年份表示(00-99) |
| %Y | 四位数的年份表示(000-9999) |
| %m | 月份(01-12) |
| %d | 月内中的一天(0-31) |
| %H | 24小时制小时数(0-23) |
| %I | 12小时制小时数(01-12) |
| %M | 分钟数(00=59) |
| %S | 秒(00-59) |
| %a | 本地简化星期名称 |
| %A | 本地完整星期名称 |
| %b | 本地简化的月份名称 |
| %B | 本地完整的月份名称 |
| %c | 本地相应的日期表示和时间表示 |
| %j | 年内的一天(001-366) |
| %p | 本地A.M.或P.M.的等价符 |
| %U | 一年中的星期数(00-53)星期天为星期的开始 |
| %w | 星期(0-6),星期天为星期的开始 |
| %W | 一年中的星期数(00-53)星期一为星期的开始 |
| %x | 本地相应的日期表示 |
| %X | 本地相应的时间表示 |
| %Z | 当前时区的名称 |
| %% | %号本身 |
datetime与字符串互转方法
字符串与datetime对象的相互转换
1. 将datetime对象转换为字符串
可以通过调用str()函数或使用strftime()方法,将datetime类型的对象转换为字符串格式:
from datetime import datetime # 导入datetime模块
stamp = datetime(2017, 10, 7) # 生成一个datetime对象
str(stamp) # 转换 #结果显示:'2017-10-07 00:00:00'
使用strftime函数时,需要传入一个定义格式的字符串参数:
stamp.strftime('%Y-%m-%d') # 结果显示:'2017-10-07'
虽然strftime的使用相对繁琐,但其功能强大,例如可以用来输出当前日期是星期几:
stamp.strftime("%w") # 结果显示:'6',表示当前日期为星期六
2. 将字符串转换为datetime对象
利用datetime.strptime函数,结合相应的格式化编码,可以将字符串解析并转换为日期对象:
from datetime import datetime
value = '2017/10/7'
datetime.strptime(value, '%Y/%m/%d')
执行上述代码后的显示结果如下:
datetime.datetime(2017, 10, 7, 0, 0)
相关在线工具推荐
此外,这里推荐几款实用的日期与天数计算在线工具供读者使用:
在线日期/天数计算器: http://tools.jb51.net/jisuanqi/date_jisuanqi
在线万年历日历: http://tools.jb51.net/bianmin/wannianli
在线阴历/阳历转换工具: http://tools.jb51.net/bianmin/yinli2yangli
Unix时间戳(timestamp)转换工具: http://tools.jb51.net/code/unixtime
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python日期与时间操作技巧总结》、《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》
希望本文所述的转换方法对大家进行Python程序设计有所帮助。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













