Python如何将字符串转换为日期


Posted in Python onJuly 31, 2020

问题

你的应用程序接受字符串格式的输入,但是你想将它们转换为 datetime 对象以便在上面执行非字符串操作。

解决方案

使用Python的标准模块 datetime 可以很容易的解决这个问题。比如:

>>> from datetime import datetime
>>> text = '2012-09-20'
>>> y = datetime.strptime(text, '%Y-%m-%d')
>>> z = datetime.now()
>>> diff = z - y
>>> diff
datetime.timedelta(3, 77824, 177393)
>>>

讨论

datetime.strptime() 方法支持很多的格式化代码, 比如 %Y 代表4位数年份, %m 代表两位数月份。 还有一点值得注意的是这些格式化占位符也可以反过来使用,将日期输出为指定的格式字符串形式。

比如,假设你的代码中生成了一个 datetime 对象, 你想将它格式化为漂亮易读形式后放在自动生成的信件或者报告的顶部:

>>> z
datetime.datetime(2012, 9, 23, 21, 37, 4, 177393)
>>> nice_z = datetime.strftime(z, '%A %B %d, %Y')
>>> nice_z
'Sunday September 23, 2012'
>>>

还有一点需要注意的是, strptime() 的性能要比你想象中的差很多, 因为它是使用纯Python实现,并且必须处理所有的系统本地设置。 如果你要在代码中需要解析大量的日期并且已经知道了日期字符串的确切格式,可以自己实现一套解析方案来获取更好的性能。 比如,如果你已经知道所以日期格式是 YYYY-MM-DD ,你可以像下面这样实现一个解析函数:

from datetime import datetime
def parse_ymd(s):
  year_s, mon_s, day_s = s.split('-')
  return datetime(int(year_s), int(mon_s), int(day_s))

实际测试中,这个函数比 datetime.strptime() 快7倍多。 如果你要处理大量的涉及到日期的数据的话,那么最好考虑下这个方案!

以上就是Python如何将字符串转换为日期的详细内容,更多关于Python字符串转换为日期的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
使用wxpython实现的一个简单图片浏览器实例
Jul 10 Python
详解Python的Django框架中的模版相关知识
Jul 15 Python
使用python实现knn算法
Dec 20 Python
让Django支持Sql Server作后端数据库的方法
May 29 Python
Python自动发送邮件的方法实例总结
Dec 08 Python
网易有道2017内推编程题 洗牌(python)
Jun 19 Python
python使用Qt界面以及逻辑实现方法
Jul 10 Python
更新pip3与pyttsx3文字语音转换的实现方法
Aug 08 Python
Python实现爬取并分析电商评论
Jun 19 Python
关于python中导入文件到list的问题
Oct 31 Python
关于python爬虫应用urllib库作用分析
Sep 04 Python
Python使用Web框架Flask开发项目
Jun 01 Python
Python在字符串中处理html和xml的方法
Jul 31 #Python
python中selenium库的基本使用详解
Jul 31 #Python
Python过滤序列元素的方法
Jul 31 #Python
python中的django是做什么的
Jul 31 #Python
如何基于python把文字图片写入word文档
Jul 31 #Python
django教程如何自学
Jul 31 #Python
Python实现一个优先级队列的方法
Jul 31 #Python
You might like
PHP与MySQL开发的8个技巧小结
2010/12/17 PHP
PHP反射机制用法实例
2014/08/28 PHP
Laravel 模型关联基础教程详解
2019/09/17 PHP
捕获关闭窗口的脚本
2009/01/10 Javascript
Jquery图片滚动与幻灯片的实例代码
2013/04/08 Javascript
js字符串截取函数substr substring slice使用对比
2013/11/27 Javascript
js调用浏览器打印模块实现点击按钮触发自定义函数
2014/03/21 Javascript
用Jquery选择器计算table中的某一列某一行的合计
2014/08/13 Javascript
js判断手机和pc端选择不同执行事件的方法
2015/01/30 Javascript
浅谈JavaScript对象的创建方式
2016/06/13 Javascript
微信小程序 详解Page中data数据操作和函数调用
2017/01/12 Javascript
js,jq,css多方面实现简易下拉菜单功能
2017/05/13 Javascript
Vue组件模板形式实现对象数组数据循环为树形结构(实例代码)
2017/07/31 Javascript
React中如何引入Angular组件详解
2018/08/09 Javascript
Vue创建头部组件示例代码详解
2018/10/23 Javascript
详解vue引入子组件方法
2019/02/12 Javascript
浅谈express.js框架中间件(middleware)
2019/04/07 Javascript
Python的一些用法分享
2012/10/07 Python
Python修改Excel数据的实例代码
2013/11/01 Python
python中split方法用法分析
2015/04/17 Python
介绍Python的Urllib库的一些高级用法
2015/04/30 Python
Python制作爬虫抓取美女图
2016/01/20 Python
浅谈python连续赋值可能引发的错误
2018/11/10 Python
pycharm运行程序时在Python console窗口中运行的方法
2018/12/03 Python
python 中如何获取列表的索引
2019/07/02 Python
Python实现FTP文件传输的实例
2019/07/07 Python
解决redis与Python交互取出来的是bytes类型的问题
2020/07/16 Python
浅析python 通⽤爬⾍和聚焦爬⾍
2020/09/28 Python
Django restful framework生成API文档过程详解
2020/11/12 Python
澳大利亚家具和家居用品购物网站:Zanui
2018/12/29 全球购物
公务员转正鉴定材料
2014/02/11 职场文书
企业安全生产月活动总结
2014/07/05 职场文书
争做文明公民倡议书
2014/08/29 职场文书
2015年营销工作总结范文
2015/04/23 职场文书
Django如何创作一个简单的最小程序
2021/05/12 Python
CSS3实现列表无限滚动/轮播效果
2021/06/23 HTML / CSS