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.存储本地时间的问题就在于如果换了时区, 那么显示的时 ...
随机推荐
- List转换Map的三种方式
1.for循环 ... 2.使用guava Map<Long, User> maps = Maps.uniqueIndex(userList, new Function<User, ...
- 干掉 Postman?测试接口直接生成API文档,ApiPost真香!
实不相瞒我的收藏夹里躺着很多优质的开发工具,我有个爱好平时遇到感兴趣的开发工具都会记录下来,然后有时间在慢慢研究.前几天刚给同事分享一款非常好用的API文档工具,真的被惊艳到了,粉丝朋友们也感受一下吧 ...
- 《剑指offer》面试题63. 股票的最大利润
问题描述 假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少? 示例 1: 输入: [7,1,5,3,6,4] 输出: 5 解释: 在第 2 天(股票价格 = ...
- 听不懂x86,arm?
之前听别人讲x86或者ARM,我心里有一些疑惑,为什么他们不考虑32位还是64位的? 直到和师傅交流了一下: I:32位机是不是不支持部署k3os? T:这个年头哪里还有32位机? T:现在说x86, ...
- yieId详解,以及和return的区别
def foo(): print("starting...") while True: res = yield 4 print("res:",res) g = ...
- How to mount Windows network disk in WSL
Backgroud Mount samba directly in wsl like linux is difficult Password for root@//filesystem.domain/ ...
- 使用Outlook欺骗性云附件进行网络钓鱼
滥用Microsoft365 Outlook 云附件的方式发送恶意文件,使恶意可执行云附件规避云查杀检测 介绍 在本文中,我们将探讨如何滥用 O365 上的云附件功能使可执行文件(或任何其他文件类型) ...
- context包
目录 Context包到底是干嘛用的? context原理 什么时候应该使用 Context? 如何创建 Context? 主协程通知有子协程,子协程又有多个子协程 context核心接口 empty ...
- linux文件系统讲解(一)
首先拿个一个硬盘,不能直接使用,要进行分区,比如下面的一块内存: 如果要进行分区,那么怎么分区,所以要有一个内存,用来保存怎么分区的信息,该块内存的名字叫启动块(BootBlock),他的大小是固定的 ...
- Android开发----Button组件的使用与练习
Button 学习目标: 文字大小.颜色 自定义背景形状 自定义按压效果 点击事件 创建一个新的Activity以增加控件 1.文字大小.颜色 直接在xml文件中定义即可 <Button and ...