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 :当前时区的名称
*%% :%号本身
将日期从一种格式转化为另一种格式:
import time
def trans_format(time_string, from_format, to_format='%Y.%m.%d %H:%M:%S'):
time_struct = time.strptime(time_string, from_format)
times = time.strftime(to_format, time_struct)
return times
#将11 May转为mm-dd形式
time_string = "11 May"
times = trans_format(time_string, '%d %b', '%m-%d') #由于没有输入年份,所以输出的默认年份是1900
将1:00pm这种格式转为24小时制
import time
import datetime
##此方法适用于将12小时制AM/PM转化为24小时制
##12.30pm -> 12:30
##12.30am -> 00:30
##1.30pm - >13.30
def time12to24(time_string, formats):
times = time.strftime("%H.%M", time.strptime(time_string, formats)) #将时间转为hh.mm类型
ftime = datetime.datetime.strptime(times, "%H.%M") #将times字符串转为%H.%M的datetime类型
if time_string.find("am") > -1:
if times >= '12.00':
ftime = ftime + datetime.timedelta(hours=36) # +36小时而不是-12小时的原因:如果未提供年份,则默认为1900,如果-12小时,年份有可能为1899,会异常
elif time_string.find("pm") > -1:
if times < '12.00':
ftime = ftime + datetime.timedelta(hours=12)
times = ftime.strftime("%H:%M")
Python 日期格式转换的更多相关文章
- python日期格式转换小记
utc格林时间==>东八区北京时间 原始日期格式: utctime = ‘2016-07-26 10:08:29’ localtime = (datetime.datetime.fromtime ...
- Python datatime 格式转换,插入MySQL数据库
Python datatime 格式转换,插入MySQL数据库 zoerywzhou@163.com http://www.cnblogs.com/swje/ 作者:Zhouwan 2017-11-2 ...
- 日期格式转换 java 2016-09-03T00:00:00.000+08:00
/** * 日期格式转换yyyy-MM-dd'T'HH:mm:ss.SSSXXX (yyyy-MM-dd'T'HH:mm:ss.SSSZ) TO yyyy-MM-dd HH:mm:ss * @ ...
- Oracle日期格式转换,tochar(),todate()
Oracle日期格式转换 本文主要介绍Oracle中的日期转换. 1. 日期转化为字符串 (以2016年10月20日为例) select to_char(sysdate,'yyyy-mm-dd hh2 ...
- SpringMVC与MyBatis整合之日期格式转换
在上一篇博客<SpringMVC与MyBatis整合(一)——查询人员列表>中遗留了日期格式转换的问题,在这篇记录解决过程. 对于controller形参中pojo对象,如果属性中有日期类 ...
- 在SQL Server中 获取日期、日期格式转换
--常用日期转换参数: PRINT CONVERT(varchar, getdate(), 120 ) 2016-07-20 16:09:01 PRINT replace(replace(replac ...
- ABAP - 日期格式转换 & ABAP经常使用日期处理函数
ABAP - 日期格式转换 如今提供下面一些日期格式转换的函数: Below are several FMs which can be used to convert date format. 1. ...
- freemark声明变量,boolean,date,date日期格式转换成String类型的(五)
<br/>assign用来定义变量<#assign name="刘德华"><br/> 获取assign定义变量的值:${name} <br ...
- ssm日期格式转换
ssm日期格式转换 1 需求 前端传入字符串类型日期转化成java中的Date类型,存入数据库中;将数据库中的日期类型通过jstl标签在前端页面转换成字符串类型. 2 步骤 2.1 ...
随机推荐
- 转载 Servlet3.0中使用注解配置Servle
转载地址:http://www.108js.com/article/article10/a0021.html?id=1496 开发Servlet3的程序需要一定的环境支持.Servlet3是Java ...
- MyBatis 注解使用动态SQL
使用MyBatis很长时间了,一直使用的是XML配置的 SQL,刚好在上一个项目中尝试使用注解方式开发,主要是由于XML配置过于繁琐,注解可以直接写在Mapper函数上,更加的方便一些. 在注解上不能 ...
- 并发工具类:CountDownLatch、CyclicBarrier、Semaphore
在多线程的场景下,有些并发流程需要人为来控制,在JDK的并发包里提供了几个并发工具类:CountDownLatch.CyclicBarrier.Semaphore. 一.CountDownLatch ...
- GDB调试多线程
先介绍一下GDB多线程调试的基本命令. info threads 显示当前可调试的所有线程,每个线程会有一个GDB为其分配的ID,后面操作线程的时候会用到这个ID. 前面有*的是当前调试的线程. th ...
- 如何设置一个严格30分钟过期的Session(转载)
本文地址: http://www.laruence.com/2012/01/10/2469.html 今天在我的微博(Laruence)上发出一个问题: 我在面试的时候, 经常会问一个问题: &quo ...
- MySql5.7.12设置log-bin
什么是binlog日志 binlog日志记录了MySql数据库的增加.删除.修改操作.用来实现MySql主从复制. 设置binlog日志 在my.cnf中配置binlog日志 [mysqld] log ...
- python核心编程学习记录之映射和集合类型
字典是python里唯一的映射类型
- InnoDB Spin rounds per wait在>32位机器上可能为负
今天发现一个系统innodb的spin rounds per wait为负,感觉很奇怪,原来是个bug: For example (output from PS but we have no patc ...
- [已解决] windows 下 git 免输密码
在 .git/config 里面加上这句话即 [credential] helper = store 原文地址:http://www.cnblogs.com/gifisan/p/5829578.htm ...
- Android ListView实现不同item的方法和原理分析
ListView实现不同item的方法和原理分析 一问题抛出Listview是android里面的重要组件,用来显示一个竖向列表,这个没有什么问题:但是有个时候列表里面的item不是一样的,如下图,列 ...