python time()的实例用法


Posted in Python onNovember 03, 2020

顾名思义,本期内容肯定是涉及编程时间,那在操作python要怎么用time这个方法呢?一起来看下吧~

时间模块的定义与使用:

时间模块time是python自带的模块,它内部封装了一些获取时间戳和字符串形式时间的函数。

导入方法如下:

import time

获取时间戳:

tiem.time():获取当前时间戳。

时间戳是指从计算机元年到现在经过的秒数。

计算机元年是指1970年1月1日0时0分0秒。

另外在python中时间戳表示为秒数,在java中表示为毫秒数。

返回值:

浮点数,内容是计算机元年至今的秒数。

案例:

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

out:

1602407766.3462217
1234

格式化时间对象

time.gmtime():获取格式化时间对象,返回值是当前格林尼治时间。

time.localtime():获取格式化时间对象,返回值是当地时间(也就是北京时间,比格林尼治时间+8小时)。

参数:

参数只有一个,类型是浮点数,返回的是计算机时间元年过去多少秒以后的时间;缺省值是当前时间。

返回值:

这两个函数的返回值除了相差8小时外都一样,返回值是格式化时间对象。

格式化时间对象有9个属性,均为int型:

tm_year=2020,表示当前是2020年
tm_mon=10,表示当前是10月
tm_mday=10,表示当前是10日
tm_hour=13,表示当前是13时(注意是格林尼治时间,加8小时才是北京时间)
tm_min=50,表示当前是50分
tm_sec=24,表示当前是24秒
tm_wday=5,表示当前是一周的第6天(周日是0,周一是1,周六是6)
tm_yday=284,表示当前是一年的第284天
tm_isdst=0,表示不是夏令时(=1表示是夏令时)

案例:

print(time.gmtime())  # 获取当前GMT:格林尼治时间
print(time.localtime())  # 获取当地时间

out:

time.struct_time(tm_year=2020, tm_mon=10, tm_mday=11, tm_hour=9, tm_min=19, tm_sec=8, tm_wday=6, tm_yday=285, tm_isdst=0)
time.struct_time(tm_year=2020, tm_mon=10, tm_mday=11, tm_hour=17, tm_min=19, tm_sec=8, tm_wday=6, tm_yday=285, tm_isdst=0)

格式化时间对象转换为字符串

time.strftime():格式化时间对象转换成字符串。

返回值:

返回值是根据字符串模板生成的字符串。

案例:

# 把时间对象转换成字符串
time_str = time.strftime('%Y年%m月%d日%H时%M分%S秒')
print(time_str)
print(time.strftime('%Y年%m月%d日%H时%M分%S秒', time.gmtime(0)))

out:

2020年10月11日17时30分24秒
1970年01月01日00时00分00秒

字符串转换为格式化时间对象

time.strptime():字符串转换为格式化时间对象。注意strptime和strftime是互逆操作,要相互转换必须使用相同的字符串模板。

参数:

和strftime的参数一样也是两个,但位置相反。

返回值:

返回值是根据字符串模板生成的格式化时间对象。

案例:

# 把时间字符串转换成时间对象
time_struct = time.strptime(time_str, '%Y年%m月%d日%H时%M分%S秒')
print(time_struct)

out:

time.struct_time(tm_year=2020, tm_mon=10, tm_mday=11, tm_hour=17, tm_min=35, tm_sec=52, tm_wday=6, tm_yday=285, tm_isdst=-1)

时间对象转换成时间戳

time.mktime():获取格式化时间对象对应的时间戳。注意mktime和gmtime、localtime是互逆操作。

参数:

参数只有一个,是格式化时间对象。

返回值:

返回值是时间戳。

案例:

# 时间对象转换为时间戳
time_num = time.mktime(time_struct)
print(time_num)
 
# 时间戳转换为时间对象
time_struct2 = time.gmtime(time_num)
time_struct3 = time.localtime(time_num)
print(time_struct2)
print(time_struct3)

out:

1602409740.0
time.struct_time(tm_year=2020, tm_mon=10, tm_mday=11, tm_hour=9, tm_min=49, tm_sec=0, tm_wday=6, tm_yday=285, tm_isdst=0)
time.struct_time(tm_year=2020, tm_mon=10, tm_mday=11, tm_hour=17, tm_min=49, tm_sec=0, tm_wday=6, tm_yday=285, tm_isdst=0)

常用案例:

1、一行代码对日期排序:

date_list = ['2020-9-10', '2020-9-20', '2020-9-15']
date_list2 = sorted(date_list, key=lambda x: time.strptime(x, '%Y-%m-%d'))
print(date_list2)

out:

['2020-9-10', '2020-9-15', '2020-9-20']

2、一行代码计算2个日期相差天数

date1 = '2020-9-10'
date2 = '1999-9-9'
 
print((time.mktime(time.strptime(date1, '%Y-%m-%d'))-time.mktime(time.strptime(date2, '%Y-%m-%d')))/86400)

out:

7672.0

到此这篇关于python time()的实例用法的文章就介绍到这了,更多相关如何使用python time()方法内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python linecache.getline()读取文件中特定一行的脚本
Sep 06 Python
Python库urllib与urllib2主要区别分析
Jul 13 Python
Python最基本的数据类型以及对元组的介绍
Apr 14 Python
Python的Bottle框架中实现最基本的get和post的方法的教程
Apr 30 Python
python避免死锁方法实例分析
Jun 04 Python
解决Python 中英文混输格式对齐的问题
Jul 16 Python
Python编程深度学习计算库之numpy
Dec 28 Python
利用Python实现手机短信监控通知的方法
Jul 22 Python
python使用pip安装模块出现ReadTimeoutError: HTTPSConnectionPool的解决方法
Oct 04 Python
使用python实现男神女神颜值打分系统(推荐)
Oct 31 Python
PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
Nov 02 Python
利用Selenium添加cookie实现自动登录的示例代码(fofa)
May 08 Python
Python-openpyxl表格读取写入的案例详解
Nov 02 #Python
Python常用扩展插件使用教程解析
Nov 02 #Python
python实现三壶谜题的示例详解
Nov 02 #Python
python 实现批量图片识别并翻译
Nov 02 #Python
基于python实现百度语音识别和图灵对话
Nov 02 #Python
用python进行视频剪辑
Nov 02 #Python
如何通过python实现IOU计算代码实例
Nov 02 #Python
You might like
php正则表达式学习笔记
2015/11/13 PHP
PHP 以POST方式提交XML、获取XML,解析XML详解及实例
2016/10/26 PHP
浅析PHP数据导出知识点
2018/02/17 PHP
jquery实现图片等比例缩放以及max-width在ie中不兼容解决
2013/03/21 Javascript
用js提交表单解决一个页面有多个提交按钮的问题
2014/09/01 Javascript
Node.js插件安装图文教程
2016/05/06 Javascript
前端框架Vue.js构建大型应用浅析
2016/09/12 Javascript
AngularJS中的按需加载ocLazyLoad示例
2017/01/11 Javascript
AngularJS实现单一页面内设置跳转路由的方法
2017/06/28 Javascript
Vue实例中生命周期created和mounted的区别详解
2017/08/25 Javascript
react-native-fs实现文件下载、文本存储的示例代码
2017/09/22 Javascript
ui-router中使用ocLazyLoad和resolve的具体方法
2017/10/18 Javascript
vue 中基于html5 drag drap的拖放效果案例分析
2018/11/01 Javascript
vue实现百度下拉列表交互操作示例
2019/03/12 Javascript
基于vue实现一个禅道主页拖拽效果
2019/05/27 Javascript
vue cli3 调用百度翻译API翻译页面的实现示例
2019/09/13 Javascript
vue中axios封装使用的完整教程
2021/03/03 Vue.js
[01:09]DOTA2次级职业联赛 - 99战队宣传片
2014/12/01 DOTA
[03:16]DOTA2完美大师赛主赛事首日集锦
2017/11/23 DOTA
python使用心得之获得github代码库列表
2014/06/25 Python
C#返回当前系统所有可用驱动器符号的方法
2015/04/18 Python
浅谈Python类的__getitem__和__setitem__特殊方法
2016/12/25 Python
python获取当前用户的主目录路径方法(推荐)
2017/01/12 Python
Python pandas常用函数详解
2018/02/07 Python
Python编程图形库之Pillow使用方法讲解
2018/12/28 Python
python filecmp.dircmp实现递归比对两个目录的方法
2020/05/22 Python
微信浏览器左上角返回按钮拦截功能
2017/11/21 HTML / CSS
HTML5响应式(自适应)网页设计的实现
2017/11/17 HTML / CSS
使用layui实现左侧菜单栏及动态操作tab项的方法
2020/11/10 HTML / CSS
三星英国官网:Samsung英国
2018/09/25 全球购物
员工培训心得体会
2013/12/30 职场文书
毕业生的自我评价范文
2013/12/31 职场文书
个人评价范文分享
2014/01/11 职场文书
2014县委书记党的群众路线教育实践活动对照检查材料思想汇报
2014/09/22 职场文书
施工安全责任协议书
2016/03/23 职场文书
golang 实现并发求和
2021/05/08 Golang