python 当前时间的前一天_python中time、datetime模块的使用

python中time、datetime模块的使用

1、前言

如果您从事过python web的开发,那一定有过这样的经历,对于各种复杂繁琐的业务逻辑,掺杂着各种各样的时间约束,让人很容易搞的头晕眼花,比如展示出一天内用户进行过的所有操作记录,再比如进行验证码验证时获取当前时间与验证码生成时间进行比较,检查是否超过10分钟过期时间之类。这些关于时间的业务逻辑,要求我们必须能熟练掌握python中关于时间的两个模块,time和datetime,只有用好了这两个模块,我们才能在代码中轻松自如的应对。

2、time模块

time模块中时间表现的格式主要有三种:

  • a、timestamp时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量
  • b、struct_time时间元组,共有九个元素组。
  • c、format time 格式化时间,已格式化的结构使时间更具可读
  • 性。包括自定义格式和固定格式。

1、时间格式转换图

8eaf2f3687062524bcb56ddad915a7b3.png

2、常用方法

import time

print(time.time()) # 当前时间戳

>>> 1569645479.6079931

print(int(time.time()))

>>> 1569645479

print(time.strftime('%Y-%m-%d %H:%M:%S')) # 格式化的时间

>>> 2019-09-28 12:37:59

print(time.strftime('%Y-%m-%d'))

>>> 2019-09-28

print(time.strftime('%H:%M:%S'))

>>> 12:37:59

print(time.gmtime()) # 获取标准时区的时间元组,如果传入了时间戳,就是把时间戳转换成时间元组

>>> time.struct_time(tm_year=2019, tm_mon=9, tm_mday=28, tm_hour=4, tm_min=37, tm_sec=59, tm_wday=5, tm_yday=271, tm_isdst=0)

print(time.gmtime(1569645453))

>>> time.struct_time(tm_year=2019, tm_mon=9, tm_mday=28, tm_hour=4, tm_min=37, tm_sec=33, tm_wday=5, tm_yday=271, tm_isdst=0)

# 使用时间戳获取代码执行时间

s_time = time.time()

for i in range(0,10):

time.sleep(1)

e_time = time.time()

print('代码运行时间是:', e_time-s_time)

>>> 代码运行时间是: 10.003105163574219

# 字符串格式化时间转换时间戳

str_time = '2019-9-28'

print(time.mktime(time.strptime(str_time, '%Y-%m-%d')))

>>> 1569600000.0

# 时间戳转换成格式化的时间字符串

gsh_time = time.time()

print(time.strftime('%Y-%m-%d', time.localtime(gsh_time)))

>>> 2019-09-28

3、datetime模块

datatime模块重新封装了time模块,提供更多接口,提供的类有:date,time,datetime,timedelta,tzinfo。

import datetimenow = datetime.datetime.now()print(now)>>> 2019-09-28 12:45:59.927901now = datetime.datetime.now()d1 = now - datetime.timedelta(hours=1) # 获取前一小时d2 = now - datetime.timedelta(days=1) # 获取前一天print(now)>>> 2019-09-28 12:47:56.662933print(d1)>>> 2019-09-28 11:47:56.662933print(d2)>>> 2019-09-27 12:47:56.662933# datetime对象转换成时间戳dt = datetime.datetime.now()print(time.mktime(dt.timetuple()))>>> 1569646475.0# 时间戳转换成datetime对象sjc_time = time.time()print(datetime.datetime.fromtimestamp(sjc_time))>>> 2019-09-28 12:55:05.500752

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/572590.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mycat 分表子查询_还不懂MyCat?一文带你深入剖析,实现MySQL读写分离

前言系统开发中,数据库是非常重要的一个点。除了程序的本身的优化,如:SQL语句优化、代码优化,数据库的处理本身优化也是非常重要的。主从、热备、分表分库等都是系统发展迟早会遇到的技术问题问题。Mycat是一个广受好评的数据库中…

常量

定义常量:(const 关键字) 例如:const int a100; 1、必须在声明时初始化,指定了其值后不再改写(存在改写现象会编译器报错) 2、不能从一个变量中提取值来初始化常量(如需这么做应该用只读字段) 3、转载于:https://www.c…

浪潮服务器5112面板灯_SA5112M4 – IPMI设置

SA5112M4 – IPMI设置1. 浪潮IPMI管理模块简介浪潮IPMI管理模块是按照IPMI2.0标准实现对服务器系统管理功能。IPMI管理模块实现的功能有:系统的实时监控在检测到故障的情况下可实现告警的上报、告警的指示和启动系统的自我保护。系统的远程控制能通过命令行和Web实现…

sqlserver如何读写操作windows系统的文件

DECLARE object int DECLARE hr int DECLARE src varchar(255), desc varchar(255) Declare tmp int declare msg varchar(3000) -------------------------1.写文件-------------------------------------- --将这串字符写到SQL …

springmvc重定向到另一个项目_spring mvc的转发与重定向

转发与重定向spring mvc底层其实就是一个servlet,因此在spring mvc中也存在转发和重定向的概念。对于转发的页面,可以是在WEB-INF目录下的页面;而重定向的页面,是不能在WEB-INF目录下的。因为重定向相当于用户再次发出一次请求&am…

MySQL备份和还原数据库及慢查询日志使用

转载于:https://www.cnblogs.com/NiceTime/p/6665495.html

Oracle 11gR2 +sqldeveloper 安装过程(学习记录)

Oracle 11g 和SQL developer安装过程 一、Oracle 11g的安装 背景:由于课程学习需要Oracle 11g,但在Oracle官方网页(https://www.oracle.com/index.html)中没有直接找到Oracle 11的版本,所以自己在网上找到相关的压缩包进行的。 …

zemax设计35mm镜头_ZEMAX怎样优化MTF?

什么是MTF?MTF即调制传递函数是描述一个光学系统很重要的方法。在成像光学系统中运用傅立叶理论的目的就是让MTF能描述图像中所要观察的空间频率场的对比度。位图分析窗口显示了三个孩子的图像的部分,展示了“好的”图像质量:但是好到底是怎样…

网线重新插拔后恢复正常_生活小窍门之网线不够长怎么办,毕亚兹网线连接器轻松搞定...

很多朋友在家中装修完时候,为了整齐和方便收纳都会把每个屋中的网口和光纤输出口集中到一起,放置到网络箱中,看起来更加整齐划一,但是装修时都不会考虑到网线要预留很长,很多时候都只留了很短的一节网线,还…

利用IDEA部署过的Tomcat开发Web Service

(1)使用idea开发一个Web Service; (2)开发一个客户端来调用该Web Service并展现出相应j结果; (3)编程调用网络上提供的天气预报Web Service并显示结果。 (1)开…

平衡的括号[UVA-673]

UVA673 Parentheses Balance 书上习题6-1,题比较简单,主要是使用栈这个“后进先出”的数据结构。因为平衡的括号,必然可以在左半括号进行push而右半括号进行pop,当到达序列末尾而栈不空,显然不满足题意了。 抛开题目说…

仅展示近三天的动态设置_抱歉,朋友仅展示最近三天的朋友圈

QQ空间可以封存; 微信朋友圈可以设置三天/半年可见; 微博可以设置半年内可见; 越来越多的人选择把自己的过去隐藏起来,为什么? 上了大学之后,你的微信好友变多了,连发传单的小哥和校门口理发店的…

wallpaper怎么导入视频_快速制作视频字幕,我们推荐这款可视化字幕软件!

大家平时在使用诸如pr,会声会影,或者爱剪辑等视频编辑软件制作字幕时会不会觉得很麻烦,一点都不方便呢?亦或是大家苦苦寻找,却怎么都找不到合适的字幕制作软件。那么到底有没有即高效又方便快捷的字幕制作软件呢&#…

javaScript命名规范

必须以字母、$符号或下划线开头;可以包括数字、字母、$符号和下划线;不能包含空格和其他标点符号;区分大小写;最好采用驼峰命名法转载于:https://www.cnblogs.com/qqm16113/p/6702569.html

带负荷测试要求二次最小电流_开关柜设计人员如何选择合适的零序电流互感器?...

作者介绍了开关柜内配零序电流互感器(适用于0.38~66kV),分析特性,探讨如何选择合适的零序电流互感器,以期达到最佳的使用效果。1 概述在中压电力系统的项目中,我们开关柜的设计人员经常会遇到开关柜内配零序电流互感器…

scikit_learn 官方文档翻译(集成学习)

1.11. Ensemble methods(集成学习) 目标: 相对于当个学习器,集成学习通过使用多个基学习器的预测结果来来提高学习预测的泛化性能以及鲁棒性; 集成学习的两个思路: 1)、通过使用并行的学习&…

css 实现一个尖角_一个讲述了 CSS 相关的技巧、动画实现 的开源项目(60篇相关文章)...

iCSS不止于 CSS文章围绕 CSS/web动画 展开,谈一些有趣的话题,内容天马行空,想到什么说什么,不仅是为了拓宽解决问题的思路,更涉及一些容易忽视或是十分有趣的 CSS 细节。Article List下面这个左边竖条图形,…

2017.4.14 java基本类型和包装类的区别

int 是基本类型,直接存数值 Integer是类,产生对象时用一个引用指向这个对象Java把内存划分成两种:一种是栈内存,另一种是堆内存 在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配 而实际的对象是在存…

httos双向认证配置_idou老师教你学Istio 15:Istio实现双向TLS的迁移

本文由华为云容器Istio团队撰稿,未经允许谢绝转载。众所周知,HTTPS是用来解决 HTTP 明文协议的缺陷,在 HTTP 的基础上加入 SSL/TLS 协议,依靠 SSL 证书来验证服务器的身份,为客户端和服务器端之间建立“SSL”通道&…

面向对象 【类库】【委托】【is as运算符】

类库(Class Library) .dll文件 类库字面意思就是类的集合,里面有很多被编译后的C#代码,不可阅读,不可修改,只能调用 类库是一个综合性的面向对象的可重用类型集合,这些类型包括:接口、抽象类和具体类。 类库…