python模块--datetime时间加减、时间转时间戳、GMT时间格式转换
1、时间模块加减乘除
import datetime
# 获取datetime时间格式并将其转换成字符串
a = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
# 将字符串时间重新转换成datetime格式
b = datetime.datetime.strptime(a, '%Y-%m-%d %H:%M:%S')# 将时间增加一周
d = b + datetime.timedelta(weeks=1)
# 将时间增加一天
c = b + datetime.timedelta(days=1)
# 将时间增加一小时
c = b + datetime.timedelta(hours=1)
# 将时间增加一分钟
c = b + datetime.timedelta(minutes=1)
# 将时间增加秒
c = b + datetime.timedelta(seconds=1)
2、13位时间戳转 标准格式时间
import datetime, time
def timeStamp(timeNum):timeStamp = float(timeNum / 1000)timeArray = time.localtime(timeStamp)otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)return otherStyleTime
3、#将某种类型的时间字符转换为13位时间戳
#这里时间字符格式为1977-05-25T02:49:52.000Z
ps:遇到很奇怪的现象,2001年之前的时间戳是12位?之后是13位的,我又去试了试下面10位时间戳的似乎也是少了一位,可能跟进位有关吧,不能严格的说多少位多少位的时间戳
import datetime, time
def get_stamp_from_time(ans):now = datetime.datetime.strptime(ans, '%Y-%m-%dT%H:%M:%S.%fZ')date_stamp = str(int(time.mktime(now.timetuple())))# 3位,微秒data_microsecond = str("%06d" % now.microsecond)[0:3]date_stamp = date_stamp + data_microsecondreturn int(date_stamp)
4、时间字符类型转10位时间戳
import datetime, time
# 字符类型的时间
def get_timestamp_from_str(tss1='2013-10-10 23:40:00'):# 转为时间数组timeArray = time.strptime(tss1, "%Y-%m-%d %H:%M:%S")# 转为时间戳timeStamp = int(time.mktime(timeArray))return timeStamp # 1381419600
5、10位时间戳转时间格式
import datetime, time
# 使用time
def get_time_from_timestamp(timeStamp=1381419600):timeArray = time.localtime(timeStamp)otherStyleTime = time.strftime("%Y--%m--%d %H:%M:%S", timeArray)return otherStyleTime # 2013--10--10 23:40:00import datetime, time
# 使用datetime
def get_time_from_timestamp(timeStamp=1381419600):timeArray = time.localtime(timeStamp)otherStyleTime = time.strftime("%Y--%m--%d %H:%M:%S", timeArray)return otherStyleTime # 2013--10--10 23:40:00# 使用datetime,指定utc时间,相差8小时
def get_time_from_timestamp(timeStamp=1381419600):dateArray = datetime.datetime.utcfromtimestamp(timeStamp)otherStyleTime = dateArray.strftime("%Y--%m--%d %H:%M:%S")return otherStyleTime # 2013--10--10 15:40:00
6、获取当前时间并转化为某种格式显示
def nowtime():# time获取当前时间戳now = int(time.time()) # 1533952277timeArray = time.localtime(now)otherStyleTime = time.strftime("%Y--%m--%d %H:%M:%S", timeArray)return otherStyleTime #2020--11--20 10:28:28# datetime获取当前时间,数组格式
def nowtime():now = datetime.datetime.now()otherStyleTime = now.strftime("%Y--%m--%d %H:%M:%S")return otherStyleTime #2020--11--20 10:28:46
7、GMT时间与datetime的格式转换
1、datetime类型转换成GMT时间格式的字符串(如'Thu, 19 Feb 2009 16:00:07 GMT'),strftime(官方释义:new string) :
from datetime import datetime
GMT_FORMAT = '%a, %d %b %Y %H:%M:%S GMT+0800 (CST)'print(datetime.utcnow().strftime(GMT_FORMAT))output:
Mon, 12 Nov 2018 08:53:51 GMT+0800 (CST)
2、将GMT时间格式的字符串转换成datetime类型,strptime(官方释义:new datetime parsed from a string):
dd = "Fri Nov 09 2018 14:41:35 GMT+0800 (CST)"
GMT_FORMAT = '%a %b %d %Y %H:%M:%S GMT+0800 (CST)'
print(datetime.strptime(dd, GMT_FORMAT))output:
2018-11-09 14:41:35
注意:GMT_FORMAT的格式要与索要转化的字符串相对应。
扩展:python的格式转化
%a 本地的星期缩写
%A 本地的星期全称
%b 本地的月份缩写
%B 本地的月份全称
%c 本地的合适的日期和时间表示形式
%d 月份中的第几天,类型为decimal number(10进制数字),范围[01,31]
%f 微秒,类型为decimal number,范围[0,999999],Python 2.6新增
%H 小时(24进制),类型为decimal number,范围[00,23]
%I 小时(12进制),类型为decimal number,范围[01,12]
%j 一年中的第几天,类型为decimal number,范围[001,366]
%m 月份,类型为decimal number,范围[01,12]
%M 分钟,类型为decimal number,范围[00,59]
%p 本地的上午或下午的表示(AM或PM),只当设置为%I(12进制)时才有效
%S 秒钟,类型为decimal number,范围[00,61](60和61是为了处理闰秒)
%U 一年中的第几周(以星期日为一周的开始),类型为decimal number,范围[00,53]。在度过新年时,直到一周的全部7天都在该年中时,才计算为第0周。只当指定了年份才有效。
%w 星期,类型为decimal number,范围[0,6],0为星期日
%W 一年中的第几周(以星期一为一周的开始),类型为decimal number,范围[00,53]。在度过新年时,直到一周的全部7天都在该年中时,才计算为第0周。只当指定了年份才有效。
%x 本地的合适的日期表示形式
%X 本地的合适的时间表示形式
%y 去掉世纪的年份数,类型为decimal number,范围[00,99]
%Y 带有世纪的年份数,类型为decimal number
%Z 时区名字(不存在时区时为空)
%% 代表转义的"%"字符
python模块--datetime时间加减、时间转时间戳、GMT时间格式转换相关推荐
- java 时间加减_java如何实现当前时间加减30分钟的方法
java如何实现当前时间加减30分钟的方法 发布时间:2020-08-17 09:41:34 来源:亿速云 阅读:280 作者:小新 这篇文章主要介绍java如何实现当前时间加减30分钟的方法,文中介 ...
- python计算时间加减,python datetime库使用和时间加减计算
datetime库使用 一.操作当前时间 1.获取当前时间 >>> import datetime >>> print datetime.datetime.now( ...
- mysql日期减后取月_mysql加减时间-函数-时间加减
select timediff('23:40:00', ' 18:30:00'); -- 两时间相减 SELECT substring( timediff('23:40:00', ' 18:30:00 ...
- 实现JAVA时间加减的两种方法
JAVA的时间加减 1.获取当前系统时间 Date date = new Date(); 2.实现时间的加减的两种方法 第一种: 用java.text.SimpleDateFormat来实现 Simp ...
- python,时间加减,时间计算,时间格式化,时间提取汇总
From: http://bbs.chinaunix.net/thread-1371304-1-1.html 不知道这么写题目会不会让人误会,不过这个题目可以让从搜索引擎上搜索问题的菜鸟们一下找到这篇 ...
- 时间加减(年月日)datetime
当前时间加减(年月日) import datetime from dateutil.relativedelta import relativedeltanow_date = datetime.date ...
- python datetime 加减_Python datetime及其加减
datetime及其加减 from dateutil.relativedelta import relativedelta from datetime import date, timedelta i ...
- oracle语句加减,oracle时间加减的语句写法
oracle时间加减运算我们经常会用到,下面就为您介绍oracle时间加减的实现方法,如果您遇到过oracle时间加减的问题,不妨一看. 加法 select sysdate,add_months(sy ...
- DB2时间函数 实现 时间加减
时间加减:后边记得跟上时间类型如day.HOUR TIMESTAMP ( TIMESTAMP(DEF_TIME)+1 day)+18 HOUR DB2时间函数是我们最常见的函数之一,下 ...
最新文章
- 【转】在OpenGL场景中实现小地图功能
- Hyperledger Indy 理解
- MTK+Android编译
- python中判断变量的类型
- C++11:forward及完美转发
- bootstraptable 分页循环_关于bootstrap-table服务端分页问题
- Django(part1)--Django介绍与安装
- PHP使用for循环打出星号表格,console - JavaScript中,使用for循环输出如下图形(等腰三角形,和平行四边形)?原理是啥?...
- 除非 Windows Activation Service (WAS)和万维网发布服务(W3SVC)均处于运行状态,否则无法启动网站。IIS 7...
- 04732微型计算机技术,04732微型计算机及其接口技术200710
- C++ 什么叫做离散化
- 一款好看的pycharm主题Atom One Dark
- 乐高ev3搭建图纸大全_乐高课程的详细介绍,内附7岁系列课程,还不抓紧时间收藏...
- java 415_@RequestBody接受参数报415错误
- 基于层次分析法(AHP)的信贷案例详解
- 网络安全应急响应----8、网页篡改应急响应
- 论文阅读笔记- Dremel
- 我的推荐系统入门经验~
- 热门App 高仿项目12 个 GitHub 上的高仿项目
- seata:Error creating bean with name ‘globalTransactionScanner‘ defined in class path resource