python: 第三方时间库 arrow
作者:@keenleung
本文为作者原创,转载请注明出处:https://www.cnblogs.com/KeenLeung/p/13099995.html
目录
import arrow print("-"*25 + "获取当前时间" + "-"*25) nowtime = arrow.now() print(nowtime) print(type(nowtime)) print("-"*25 + "获取当前时间(utc 世界标准时间)" + "-"*25) utc_nowtime = arrow.utcnow() print(utc_nowtime) print(type(utc_nowtime)) print("-"*25 + "获取当前时间一个小时之前的时间" + "-"*25) new_nowtime = nowtime.shift(hours=-1) print(new_nowtime) print("-"*25 + "调整时间" + "-"*25) new_nowtime = nowtime.shift(days=+1, hours=-1) print(new_nowtime) print("-"*25 + "修改时间" + "-"*25) new_nowtime = nowtime.replace(hour=4, minute=40) print(new_nowtime) print("-"*25 + "utc 时间转成当前时区的时间(转换时区)" + "-"*25) local = utc_nowtime.to('Asia/Shanghai') print(local) print("-"*25 + "文本转时间对象" + "-"*25) print(arrow.get('2020-05-11T21:23:58.970460+07:00')) print("-"*25 + "当前时间的时间戳" + "-"*25) now_timestamp = nowtime.timestamp print(now_timestamp) print("-"*25 + "时间戳转时间" + "-"*25) new_nowtime = arrow.get(now_timestamp).to('Asia/Shanghai') print(new_nowtime) print("-"*25 + "当前时间格式化" + "-"*25) print(nowtime.format()) print(nowtime.format("YYYY-MM-DD HH:mm:ss ZZ")) print(nowtime.format("YYYY-MM-DD HH:mm:ss")) print("-"*25 + "从string中解析时间对象" + "-"*25) print(arrow.get('2020-06-12 18:52:45', 'YYYY-MM-DD HH:mm:ss')) print(arrow.get('June was born in May 1980', 'MMMM YYYY')) print("-"*25 + "转为标准对象库" + "-"*25) print(nowtime.datetime) print(nowtime.date()) print(nowtime.time()) print("当前年:{}".format(nowtime.year)) print("当前月:{}".format(nowtime.month)) print("当前日:{}".format(nowtime.day)) print("当前时:{}".format(nowtime.hour)) print("当前分:{}".format(nowtime.minute)) print("当前秒:{}".format(nowtime.second)) print("ctime 格式:{}".format(nowtime.ctime())) # Fri Jun 12 15:49:56 2020 print("以整数形式返回星期几(0-6):{}".format(nowtime.weekday())) print("以整数形式返回一周中的ISO日(1-7): {}".format(nowtime.isoweekday())) print("返回3元组(ISO年,ISO周数,ISO工作日): {}".format(nowtime.isocalendar())) print("返回日期的格雷戈里序数 : {}".format(nowtime.toordinal())) print("-"*25 + '获取任意时间单位的时间跨度' + '-'*25) print(arrow.now().span('hour')) print(arrow.now().span('day')) print(arrow.now().span('month')) print(arrow.now().span('year')) print("-"*25 + '得到任意单位时间中的最大值或最小值' + '-'*25) print(arrow.now().floor('hour')) print(arrow.now().ceil('hour')) print(arrow.now().floor('day')) print(arrow.now().ceil('day')) print("-"*25 + "人性化时间" + "-"*25) print(nowtime.humanize()) # just now print(nowtime.humanize(locale='zh_CN')) # 刚才 """打印: -------------------------获取当前时间------------------------- 2020-06-12T15:58:52.729652+08:00 <class 'arrow.arrow.Arrow'> -------------------------获取当前时间(utc 世界标准时间)------------------------- 2020-06-12T07:58:52.729749+00:00 <class 'arrow.arrow.Arrow'> -------------------------获取当前时间一个小时之前的时间------------------------- 2020-06-12T14:58:52.729652+08:00 -------------------------调整时间------------------------- 2020-06-13T14:58:52.729652+08:00 -------------------------修改时间------------------------- 2020-06-12T04:40:52.729652+08:00 -------------------------utc 时间转成当前时区的时间(转换时区)------------------------- 2020-06-12T15:58:52.729749+08:00 -------------------------文本转时间对象------------------------- 2020-05-11T21:23:58.970460+07:00 -------------------------当前时间的时间戳------------------------- 1591948732 -------------------------时间戳转时间------------------------- 2020-06-12T15:58:52+08:00 -------------------------当前时间格式化------------------------- 2020-06-12 15:58:52+08:00 2020-06-12 15:58:52 +08:00 2020-06-12 15:58:52 -------------------------从string中解析时间对象------------------------- 2020-06-12T18:52:45+00:00 1980-05-01T00:00:00+00:00 -------------------------转为标准对象库------------------------- 2020-06-12 15:58:52.729652+08:00 2020-06-12 15:58:52.729652 当前年:2020 当前月:6 当前日:12 当前时:15 当前分:58 当前秒:52 ctime 格式:Fri Jun 12 15:58:52 2020 以整数形式返回星期几(0-6):4 以整数形式返回一周中的ISO日(1-7): 5 返回3元组(ISO年,ISO周数,ISO工作日): (2020, 24, 5) 返回日期的格雷戈里序数 : 737588 -------------------------获取任意时间单位的时间跨度------------------------- (<Arrow [2020-06-12T15:00:00+08:00]>, <Arrow [2020-06-12T15:59:59.999999+08:00]>) (<Arrow [2020-06-12T00:00:00+08:00]>, <Arrow [2020-06-12T23:59:59.999999+08:00]>) (<Arrow [2020-06-01T00:00:00+08:00]>, <Arrow [2020-06-30T23:59:59.999999+08:00]>) (<Arrow [2020-01-01T00:00:00+08:00]>, <Arrow [2020-12-31T23:59:59.999999+08:00]>) -------------------------得到任意单位时间中的最大值或最小值------------------------- 2020-06-12T15:00:00+08:00 2020-06-12T15:59:59.999999+08:00 2020-06-12T00:00:00+08:00 2020-06-12T23:59:59.999999+08:00 -------------------------人性化时间------------------------- just now 刚才 """
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架