Python_time库_特定字符串格式的时间、struct_time、时间戳的处理
time库
时间戳:格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。
# time.strptime(),功能:将特定字符串格式的时间,转换为struct_time。
# time.strftime(),功能:将struct_time,转换为特定字符串格式的时间。
# time.time(),功能:将当前时间转换为时间戳。
# time.mktime(),功能:将struct_time转换为时间戳,输入当地struct_time,输出格林威治时间戳。
# time.localtime(),功能:将时间戳转换为struct_time(当地时间)。
# time.gmtime(),功能:将时间戳转换为struct_time(格林威治时间)。
# localtime与gmtime两者关系:例如,localtime北京时间 = gmtime格林威治时间 + 8小时
# 特定字符串格式的时间 <=> struct_time <=> 时间戳
import time
# 1. 特定字符串格式的时间 -> struct_time -> 时间戳
time_1 = "2000-01-01 14:30:30"
time_2 = time.strptime(time_1, '%Y-%m-%d %H:%M:%S')
time_2
# time.struct_time(tm_year=2000, tm_mon=1, tm_mday=1, tm_hour=14, tm_min=30, tm_sec=30, tm_wday=5, tm_yday=1, tm_isdst=-1)
time_3 = time.mktime(time_2)
time_3
# 946708230.0
# 2. 时间戳 -> struct_time -> 特定字符串格式的时间
time_3 = 946708230.0
time_4 = time.gmtime(time_3)
time_4
# time.struct_time(tm_year=2000, tm_mon=1, tm_mday=1, tm_hour=6, tm_min=30, tm_sec=30, tm_wday=5, tm_yday=1, tm_isdst=0)
time_5 = time.strftime('%Y-%m-%d %H:%M:%S', time_4)
time_5
# '2000-01-01 06:30:30'
type(time_5)
# str
# 注意:此时time_1和time_5已经不一致了,相差了8个小时,原因在time.mktime()函数上。time.mktime()输入的是当地struct_time,输出的是格林威治时间戳。
# 3. 将格林威治时间戳转换为格林威治时间和本地时区时间
# 获取一个当前时间戳
times = time.time()
# 将一个时间戳格式化为格林威治时间
gmtimes_before = time.gmtime(times)
gmtimes_before
# time.struct_time(tm_year=2022, tm_mon=2, tm_mday=26, tm_hour=12, tm_min=1, tm_sec=30, tm_wday=5, tm_yday=57, tm_isdst=0)
gmtimes = time.strftime("%Y-%m-%d %H:%M:%S", gmtimes_before)
gmtimes
# '2022-02-26 12:01:51'
# 将一个时间戳格式化为本地时区时间
mytimes_before = time.localtime(times)
mytimes_before
# time.struct_time(tm_year=2022, tm_mon=2, tm_mday=26, tm_hour=20, tm_min=4, tm_sec=30, tm_wday=5, tm_yday=57, tm_isdst=0)
mytimes = time.strftime("%Y-%m-%d %H:%M:%S", mytimes_before)
mytimes
# '2022-02-26 20:04:46'
# 4. pd.Timestamp()
# 以秒为单位转换表示Unix纪元的浮点数
pd.Timestamp(1513393355, unit='s')
# Timestamp('2019-12-16 03:02:35')
Python_time库_特定字符串格式的时间、struct_time、时间戳的处理的更多相关文章
- 判断库中为字符串格式的时间是否为最近三个月(Java)
今天分享一个问题,就是标题中提到的问题,今天在调用一个接口的时候,发现调用到的数据的时间格式为字符串类型,我有点蒙圈,于是,我就百度解决了这个问题,同时在这里记录一下,为了之后不再蒙圈::: 首先需要 ...
- js把字符串格式的时间转换成几秒前、几分钟前、几小时前、几天前等格式
最近在做项目的时候,需要把后台返回的时间转换成几秒前.几分钟前.几小时前.几天前等的格式:后台返回的时间格式为:2015-07-30 09:36:10,需要根据当前的时间与返回的时间进行对比,最后显示 ...
- Python实现ParseDuration-支持解析字符串格式的时间单位,例如将小时或者分钟数转换为秒
python的time模块不支持单独将字符串格式的分钟数和小时数转换为秒,比如将“5m”转换为“300”(秒),不支持将“0.2h5.1m12.123s”转换为“1038.123”(秒). 但是这种字 ...
- js 字符串格式化为时间格式
首先介绍一下我遇到的坑,找了几个关于字符串转时间的,他们都可以就我用的时候不行. 我的原因,我的字符串是MYSQL拿出来的不是标准的时间格式,是不会转成功的. 解决思路:先将字符串转为标准时间格式的字 ...
- js获取此刻时间或者把日期格式时间转换成字符串格式的时间
getTime(val){ if (val&val instanceof Date){ d = val; }else{ d = new Date(); }; var year = d.getF ...
- python_81_标准库_时间模块
''' 标准库: 1.time 时间的三种表示方法:a:时间戳(timestamp) b:格式化的时间字符串 c:元组(struct_time)共九个元素 time.struct_time(tm_ye ...
- matlab中datest() 将日期和时间转换为字符串格式
来源:https://ww2.mathworks.cn/help/matlab/ref/datestr.html?searchHighlight=datestr&s_tid=doc_srcht ...
- 将与系统时间格式不同的字符串格式化为DATETIME类型
若系统时间格式为2012/03/05 08:12:12,那么若将("2012-03-05 08:12:12")格式化为时间变量时会报错,在转化之前先将系统时间格式改变再转换就不会报 ...
- [C/C++标准库]_[初级]_[转换UTC时间到local本地时间]
场景 1.如果有面向全球用户的网站, 一般在存储时间数据时存储的是UTC格式的时间, 这样时间是统一的, 并可以根据当地时区来进行准确的转换. 2.存储本地时间的问题就在于如果换了时区, 那么显示的时 ...
随机推荐
- day 18 C语言顺序结构基础定义1
(1).有以下程序: 程序运行后的输出结果是[B] (A).3,5,5,3 (B).3,5,3,5 (C).5,3,3,5 (D).5,3,5,3 这个题其实也可以弄成改错题,传到函数里面要对其值操作 ...
- rocketmq实现延迟队列精确到秒级实现方案1-代理实现
简单的来说,就是rocketmq发送消息到broker的时候,判断是否定时消息, 如果是定时消息,将消息发送到代理服务(这个是一个独立的服务,需要自己开发,定时地把消息发送出去), 当然了消息用什么来 ...
- C#图片转成流
Bitmap b = new Bitmap(Server.MapPath(ppath)); Stream ms = new MemoryStream(); b.Save(ms, System.Draw ...
- 【get√】golang新手理解了一点点gin框架的中间件
1.通过use()来使用多个中间件 router := gin.New() router.Use( middleware1, middleware2) 2.中间件的典型实现 func Logger() ...
- 处理json中的空格
很多json中带有空格 而json解析类很多自带去空行 导致解析json如下 只能在解析之前用"111111"之类的替换 之后再替换回来 result = result.Repla ...
- 领域驱动设计-CQRS
CQRS 代表命令查询职责分离.这是我第一次听到Greg Young描述的模式.其核心概念是,您可以使用与用于读取信息的模型不同的模型来更新信息.在某些情况下,这种分离可能很有价值,但请注意,对于大多 ...
- BAT经典面试题之redis的热KEY问题怎么解决
引言 讲了几天的数据库系列的文章,大家一定看烦了,其实还没讲完...(以下省略一万字).今天我们换换口味,来写redis方面的内容,谈谈热key问题如何解决.其实热key问题说来也很简单,就是瞬间有几 ...
- jetson-nano opencv基础使用
前言: jetson nano前一篇给大家介绍了学习的一些思路和资料,今天继续给大家分享一篇在jetson nano使用opencv的文章. OpenCV的全称是Open Source Compute ...
- ps -ef aux区别
第一点 -ef是System V展示风格,而aux是BSD风格. BSD风格 字段含义: USER:用户名称 PID:进程号 %CPU:进程占用CPU的百分比 %MEM:进程占用物理内 ...
- python中True和False
python中只有0代表False,只有1代表True,注意只有!! if x: print('True') 只要x是非零数值.非空字符串.非空list等,就判断为True,否则为False.