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、时间格式转换图

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

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

  1. python中datetime模块_python中的datetime模块

    datetime是python中日期和时间管理模块,包含date,time,datetime,timedelta,datetime_CAPI,sys,timezone等类 datetime模块中包含的 ...

  2. python怎么打开h5文件_python中利用h5py模块读取h5文件中的主键方法

    如下所示: import h5py import numpy as np #HDF5的写入: imgData = np.zeros((2,4)) f = h5py.File('HDF5_FILE.h5 ...

  3. python 当前时间的前一天_Python与Stata的数据交互

    Python与Stata的数据交互 最近拿到了Stata的船新版本--Stata16,就迫不及待地玩了两天.总的来说,Stata16不论在UI上,还是在功能上,都比之前的版本进步了许多. 特别值得一说 ...

  4. python中datetime模块是以什么时间为基础_Python基础之datetime模块

    Outline 构建时间对象实例 date实例的构造 time实例的构造 datetime实例的构造 timedelta对象的构造 tzinfo介绍 时间转换 时间对象转字符串 字符串转时间对象 时间 ...

  5. python获取当前utc时间_python中通过datetime获取UTC时间ISO格式

    一个热点统计需求,需要限定一个时间范围,计算出该范围内的热点事件,相关数据则以UTC标准时间的ISO时间格式存在mongodb中,和服务器设置的时区UTC+8并不一致. 为了解决这个问题,直觉反应是在 ...

  6. python里的join方法_python中join()方法介绍

    描述 Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串. 语法 join()方法语法: str . join ( sequence ) 参数 sequence -- ...

  7. python mysql 时间比较大小_python时间函数与mysql时间函数转换

    时间相关操作,时间有三种表示方式: 时间戳               1970年1月1日之后的秒,即:time.time() 格式化的字符串    2014-11-11 11:11,    即:ti ...

  8. python中time模块的时间戳和格式化日期_Python中的time模块与datetime模块

    time模块 time模块是包含各方面对时间操作的函数. 尽管这些常常有效但不是所有方法在任意平台中有效. time用struct_time表示时间 import time # time.struct ...

  9. python显示时间且更新_python显示当前时间

    import time time.strftime("%Y%m%d %X", time.localtime()) #当前时区 time.strftime("%Y%m%d ...

最新文章

  1. 开始使用博客了,改变从这里开始。
  2. 厦大计算机研究生和福大,考研:只知道厦门大学?福建还有这些211值得你了解...
  3. 矩阵LU分解分块算法实现
  4. 【运筹学】表上作业法 ( 求初始基可行解 | 最小元素法 )
  5. 《浪潮之巅》--百年帝国读后感
  6. laravel 控制器中使用中间件_在 Laravel 中使用 Slack 进行异常通知
  7. Node.js umei图片批量下载Node.js爬虫1.00
  8. Activity生命周期(略记)
  9. HashMap使用HashMap(int initialCapacity)初始化
  10. Flutter布局锦囊---蜡笔画的表单
  11. 基于DHT网络的BT磁力链蜘蛛源码
  12. matlab实现振动弹簧的实时动画,仿真动画软件设计作品--理想弹簧振子简谐振动...
  13. 【Android进阶】Android仿淘宝商品浏览滑(拖)动查看详情界面
  14. iOS开发之Moya网络请求使用与封装
  15. CubeMXIDE 汉化
  16. C# 二维码 生成、解析
  17. Python3修改电脑mac地址
  18. 一句平静而感人的英文电影对白
  19. Kubernetes详解(四十一)——Secret创建
  20. 俞敏洪励志演讲:摆脱恐惧

热门文章

  1. linux文件赋予755权限,Linux文件和目录的777、755、644权限解释
  2. bfd联动 cisco_以太链路的接口备份和BFD联动
  3. 挖掘城市ip_抖in杭州嘉年华,原来城市营销还能这么玩!
  4. Html百分比设宽偏差大,前端开发之移动端适配详细讲解
  5. python内置对象是什么_#【Python】【基础知识】【内置对象常用方法】
  6. Collections类操作集合详解
  7. ndows10同时打印多份文档,Windows10如何同时重命名多个文件
  8. mysql数据库基础简介_MySql数据库基础之数据库简介及安装
  9. 数学建模学习笔记(三)——插值算法
  10. 【OpenCV 例程200篇】09. 图像的裁剪(cv2.selectROI)