python中time、datetime模块的使用


Posted in Python onDecember 14, 2020

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

python中time、datetime模块的使用

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 datetime

now = datetime.datetime.now()
print(now)
>>> 2019-09-28 12:45:59.927901

now = datetime.datetime.now()
d1 = now - datetime.timedelta(hours=1) # 获取前一小时
d2 = now - datetime.timedelta(days=1) # 获取前一天
print(now)
>>> 2019-09-28 12:47:56.662933
print(d1)
>>> 2019-09-28 11:47:56.662933
print(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中time、datetime模块的使用的详细内容,更多关于python time、datetime模块的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
pip 错误unused-command-line-argument-hard-error-in-future解决办法
Jun 01 Python
python结合shell查询google关键词排名的实现代码
Feb 27 Python
pandas series序列转化为星期几的实例
Apr 11 Python
Python3中正则模块re.compile、re.match及re.search函数用法详解
Jun 11 Python
在Python dataframe中出生日期转化为年龄的实现方法
Oct 20 Python
详解python中sort排序使用
Mar 23 Python
python读取Excel表格文件的方法
Sep 02 Python
python django中8000端口被占用的解决
Dec 17 Python
python实现打砖块游戏
Feb 25 Python
Python ellipsis 的用法详解
Nov 20 Python
python中HTMLParser模块知识点总结
Jan 25 Python
python 实现图片裁剪小工具
Feb 02 Python
全面介绍python中很常用的单元测试框架unitest
Dec 14 #Python
python读写数据读写csv文件(pandas用法)
Dec 14 #Python
详解Python中@staticmethod和@classmethod区别及使用示例代码
Dec 14 #Python
Python 找出英文单词列表(list)中最长单词链
Dec 14 #Python
Python 排序最长英文单词链(列表中前一个单词末字母是下一个单词的首字母)
Dec 14 #Python
Python实现Kerberos用户的增删改查操作
Dec 14 #Python
python-地图可视化组件folium的操作
Dec 14 #Python
You might like
php中通过curl模拟登陆discuz论坛的实现代码
2012/02/16 PHP
php求正负数数组中连续元素最大值示例
2014/04/11 PHP
强制PHP命令行脚本单进程运行的方法
2014/04/15 PHP
php+mysqli数据库连接的两种方式
2015/01/28 PHP
php中请求url的五种方法总结
2017/07/13 PHP
ThinkPHP5.1表单令牌Token失效问题的解决
2019/03/22 PHP
CodeIgniter框架实现的整合Smarty引擎DEMO示例
2019/03/28 PHP
如何用jquery控制表格奇偶行及活动行颜色
2014/04/20 Javascript
jQuery动画与特效详解
2015/02/01 Javascript
JavaScript函数使用的基本教程
2015/06/04 Javascript
jQuery获取页面元素绝对与相对位置的方法
2015/06/10 Javascript
jquery实现简易的移动端验证表单
2015/11/08 Javascript
javascript html5实现表单验证
2016/03/01 Javascript
jquery弹出框插件jquery.ui.dialog用法分析
2016/08/20 Javascript
学习vue.js条件渲染
2016/12/03 Javascript
原生js实现手风琴功能(支持横纵向调用)
2017/01/13 Javascript
微信小程序 下拉菜单简单实例
2017/04/13 Javascript
详解React-Native解决键盘遮挡问题(Keyboard遮挡问题)
2017/07/13 Javascript
图片懒加载imgLazyLoading.js使用详解
2020/09/15 Javascript
vue-quill-editor富文本编辑器简单使用方法
2018/09/21 Javascript
ES6 Class中实现私有属性的一些方法总结
2019/07/08 Javascript
vue-video-player 解决微信自动全屏播放问题(横竖屏导致样式错乱问题)
2020/02/25 Javascript
[03:43]2014DOTA2西雅图国际邀请赛 newbee战队巡礼
2014/07/07 DOTA
Python冒泡排序注意要点实例详解
2016/09/09 Python
Python帮你微信头像任意添加装饰别再@微信官方了
2019/09/25 Python
Python文件操作函数用法实例详解
2019/12/24 Python
Python实现队列的方法示例小结【数组,链表】
2020/02/22 Python
解决pycharm debug时界面下方不出现step等按钮及变量值的问题
2020/06/09 Python
使用npy转image图像并保存的实例
2020/07/01 Python
详解python第三方库的安装、PyInstaller库、random库
2021/03/03 Python
JustFab加拿大:女鞋、靴子、手袋和服装在线
2018/05/18 全球购物
二人合伙经营协议书
2014/09/13 职场文书
2015年初三班主任工作总结
2015/05/21 职场文书
2015年煤矿安全工作总结
2015/05/23 职场文书
2016年教师政治思想表现评语
2015/12/02 职场文书
win10系统xps文件怎么打开?win10打开xps文件的两种操作方法
2022/07/23 数码科技