日期格式转换不外乎就是日期格式-字符串格式-数值格式之间的相互转换,以及相同格式的不同形式间的转换,最常用的是datetime模块,下面直接举例子说明如何进行转换。
1. 日期时间格式转字符

首先获取当天日期

from datetime import datetime
today = datetime.today()
print(today)
#datetime.datetime(2018, 9, 8, 22, 32, 46)

返回结果分别包含年月日时分秒,代表当前的日期时间,这是最常见的日期时间格式,在DataFrame的显示形式是“2018-09-08 22:32:46”,假如我们要把日期转换为字符串形式“2018-09-08”或“20180908”等,就要用到datetime的内置strftime函数。

today.strftime('%Y-%m-%d')
#'2018-09-08'
today.strftime('%Y%m%d')
#'20180908'
today.strftime('%Y-%m')
#'2018-09'

strftime接受日期时间格式参数,完全靠格式化参数控制要显示的日期或时间格式。
python中时间日期格式化符号:
%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 当前时区的名称

2. 字符转日期时间
假如要把字符‘2018-09-08’转为日期有两种比较常用的方法。
第一种方法用datetime模块的strptime函数:

datetime.strptime('2018-09-08','%Y-%m-%d')
#datetime.datetime(2018, 9, 8, 0, 0)

strptime函数接受两个参数,第一个是要转换的字符串日期,第二个是日期时间的格式化形式。
第二种方法可以借助pandas模块里面的to_datetime函数:

import pandas as pd
pd.to_datetime('2018-09-08')
#Timestamp('2018-09-08 00:00:00')
pd.to_datetime('201909',format='%Y%m')
#Timestamp('2019-09-01 00:00:00')

to_datetime函数常用的参数有两个,第一个是要转换的字符日期时间格式,第二个是该字符日期时间的格式化形式,对于简单的时间格式第二个参数format可以省略,to_datetime会自动识别,复杂一点的时间格式需要指定format。

3.数值转日期

这种情况一般发生在,数据库或者我们导入Python的数据该日期时间字段是以数值格式储存的,这时需要把它转为日期时间格式以方便后续的应用。
数值转日期只需先把数值转换为字符,再用上面介绍的字符转日期处理就可以了。

dt = 20180908
datetime.strptime(str(dt),'%Y%m%d')
#datetime.datetime(2018, 9, 8, 0, 0)

讲到这里其实日常用到的大部分日期时间处理都可以应付了,Python里面可以处理时间的模块很多,这里推荐一下arrow模块,有兴趣的小伙伴可以自己查一下使用教程,个人觉得比datetime模块还要简单粗暴。

Python常用日期时间格式转换总结相关推荐

  1. Between 的开始日期和结束日期是同一天没有查询结果,附SQL server数据库的日期时间格式转换大全

    Between 的开始日期和结束日期是同一天没有查询结果 原因: 条件和参数不是一个格式)如字段的类型里包含了时间分钟秒,但是给的条件里没有这些,只有时间 between会在日期后面自动追加" ...

  2. 语言 全排列 函数_Power Query 中日期时间格式转换需要了解的区域语言对照表

    不同的国家有不同的日期时间书写格式,比如: 多数亚洲国家:yyyy-MM-dd hh:mm 有些欧洲国家:dd.MM.yyyy HH:mm 极少数的国家:MM/dd/yyyy h:mm tt 还有各种 ...

  3. mysql带中文日期转换_【MySQL】日期时间格式转换_MySQL

    bitsCN.com [MySQL]日期时间格式转换 这里是一个使用日期函数的例子.下面的查询选择了所有记录,其date_col的值是在最后30天以内: www.bitsCN.com mysql> ...

  4. 如何通过数据库SQL Server 2014中的SQL日期格式化语句来转换出我们需要的日期格式化日期时间格式转换的教程方法

    如何通过数据库SQL Server 2014中的SQL日期格式化语句来转换出我们需要的日期格式化日期时间格式转换的教程方法 作者:张国军_Suger 开发工具与关键技术:SQL Server 2014 ...

  5. sql时间转换时分秒_SqlServer 日期时间格式转换(SQL server date time format conversion).doc...

    SqlServer 日期时间格式转换(SQL server date time format conversion) SqlServer 日期时间格式转换(SQL server date time f ...

  6. java datetime 转换_如何实现Java日期时间格式转换

    Java日期时间以及日期相互转换 Java日期时间,以及相互转化,供大家参考,具体内容如下 package com.study.string; import java.text.ParseExcept ...

  7. oracle常用的时间格式转换

    1:取得当前日期是本月的第几周   select to_char(sysdate,'YYYYMMDD W HH24:MI:SS') from dual; TO_CHAR(SYSDATE,'YY') s ...

  8. oracle中常用的时间格式转换

    1:取得当前日期是本月的第几周   select to_char(sysdate,'YYYYMMDD W HH24:MI:SS') from dual; TO_CHAR(SYSDATE,'YY') s ...

  9. android 日期键盘,android 日期时间格式转换;软键盘显示消失;获取系统title

    获取activty title bar: TextView actionTitle = (TextView) findViewById(com.android.internal.R.id.action ...

最新文章

  1. 基于android7.1+msm8937读取ADC采样值
  2. Postfix邮件队列查看方法
  3. 从Servlet到JSP,从Model1到Model2
  4. VUE全局导航守卫、 请求、响应拦截器 的设置
  5. 走向REST:在Spring和JAX-RS(Apache CXF)中嵌入Jetty
  6. WPF程序将DLL嵌入到EXE的两种方法
  7. HTML wbr元素
  8. TensorFlow 实战(三)—— 实现常见公式
  9. ant design vue table 高度自适应_Table行内的开关组件的使用
  10. SCT12A0DHKR,2.7V-14V输入,30W高效全集成同步升压DCDC转换器,应用领域以及参考设计
  11. 51/52单片机 TCON控制字及TMOD寄存器
  12. Rtools下载与安装(win10)
  13. 习题 3.10 有一函数:写一程序,输入x,输出y值。
  14. 施迈赛151192476 ZQ 700-11拉线开关
  15. 利用WiFi控制手机进行刷宝APP看视频
  16. 场效应三极管及其放大电路(1)MOSFET详解
  17. 基于立体视觉的三维模型重建系统设计
  18. ADGuard 开源广告拦截器 —— 筑梦之路
  19. php pdf文档内容修改,php2pdf-如何使用php修改pdf中的内容,并且保证格式不乱
  20. js正则验证身份证号码(最后一位x不区分大小写)

热门文章

  1. IP和MAC地址绑定的好处和作用
  2. 均方根求有效值c语言算法,求助均方根计算公式,用于计算交流有效电压值
  3. 大雁塔尺寸_西安大雁塔站设计
  4. CentOS7编译WD My Cloud下的SVN(Subversion)(附编译好的SVN的链接)
  5. [book]《刻意练习》
  6. 华为手机微信分身已下载文件如何拷贝,导出已下载文件
  7. 网络篇 - rpc协议的应用web3j
  8. 有趣的物联网项目合集
  9. python考核试题及答案
  10. 今天有个做测试的朋友跳槽涨薪20k,我惊呆了